
/* WARNING: Type propagation algorithm not settling */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Enum "ELFOSABI": Some values do not have unique names */
/* DWARF original prototype: bool relocate(Relocate * this, Relocate_info<32,_true> * relinfo, uint
   rel_type, Target_mips<32,_true> * target, Output_section * output_section, size_t relnum, uchar *
   preloc, Sized_symbol<32> * gsym, Symbol_value<32> * psymval, uchar * view, Mips_address address,
   section_size_type param_11) */

bool __thiscall
anon_unknown.dwarf_ead2ad::Target_mips<32,_true>::Relocate::relocate
          (Relocate *this,Relocate_info<32,_true> *relinfo,uint rel_type,
          Target_mips<32,_true> *target,Output_section *output_section,size_t relnum,uchar *preloc,
          Sized_symbol<32> *gsym,Symbol_value<32> *psymval,uchar *view,Mips_address address,
          section_size_type param_11)

{
  uint64_t *puVar1;
  _Base_ptr *pp_Var2;
  _Rb_tree_header *p_Var3;
  byte bVar4;
  Mips_address address_00;
  Mips_address MVar5;
  Mips_relobj<32,_false> *this_00;
  Mips_output_data_mips_stubs<32,_true> *pMVar6;
  Mips_output_data_plt<32,_true> *pMVar7;
  Mips_output_data_la25_stub<32,_true> *pMVar8;
  uint64_t uVar9;
  undefined8 uVar10;
  ulong uVar11;
  _Bit_type *p_Var12;
  pointer pcVar13;
  _Rb_tree_color _Var14;
  _Alloc_hider _Var15;
  bool bVar16;
  byte bVar17;
  byte bVar18;
  ushort uVar19;
  Valtype x;
  Value VVar20;
  uint uVar21;
  uint uVar22;
  uint uVar23;
  Value VVar24;
  int iVar25;
  uint uVar26;
  Status SVar27;
  char *pcVar28;
  ulong uVar29;
  Mips_got_info<32,_true> *pMVar30;
  _List_node_base *p_Var31;
  Mips_relobj<32,_false> *pMVar32;
  _Base_ptr p_Var33;
  Sized_symbol<32> *pSVar34;
  Mips_relobj<32,_false> *pMVar35;
  _Base_ptr p_Var36;
  _Base_ptr p_Var37;
  ushort uVar38;
  Value_type VVar39;
  long lVar40;
  bool jal_shuffle;
  int extraout_EDX;
  uint uVar41;
  Mips_relobj<32,_false> *extraout_RDX;
  Mips_relobj<32,_false> *pMVar42;
  ulong uVar43;
  Symbol_value<32> *extraout_RDX_00;
  Symbol_value<32> *extraout_RDX_01;
  undefined7 uVar46;
  Symbol_value<32> *pSVar44;
  Mips_relobj<32,_true> *extraout_RDX_02;
  Mips_relobj<32,_true> *extraout_RDX_03;
  Mips_relobj<32,_true> *pMVar45;
  char cVar47;
  uint uVar48;
  uint uVar49;
  Relocate *pRVar50;
  Mips_output_data_got<32,_true> *pMVar51;
  Mips_address value;
  Mips_symbol<64> *sym;
  _List_node_base **object;
  byte *pbVar52;
  Mips_relobj<32,_false> *pMVar53;
  Target_mips<32,_true> *pTVar54;
  _Base_ptr p_Var55;
  size_t sVar56;
  undefined1 uVar57;
  uint *puVar58;
  ulong uVar59;
  uint uVar60;
  bool bVar61;
  bool bVar62;
  bool bVar63;
  bool bVar64;
  undefined1 in_stack_fffffffffffffeb8;
  Symbol *in_stack_fffffffffffffec0;
  undefined1 in_stack_fffffffffffffec8;
  uint in_stack_fffffffffffffed0;
  _List_node_base *in_stack_fffffffffffffed8;
  _List_node_base *in_stack_fffffffffffffee0;
  _List_node_base *in_stack_fffffffffffffee8;
  undefined4 uVar65;
  _List_node_base *local_108;
  uint local_f8;
  uint local_f4;
  byte local_ec;
  uint local_e8;
  byte local_e3;
  bool local_e2;
  bool local_e1;
  Mips_relobj<32,_false> *local_d0;
  uint local_c8;
  uint local_c4;
  ulong local_c0;
  uint local_b0;
  _List_node_base *local_98;
  uint r_types [3];
  Symbol_value<32> symval;
  string local_58;
  
  bVar18 = 0;
  uVar21 = *(uint *)(relinfo->reloc_shdr + 0x14);
  uVar60 = *(uint *)(relinfo->reloc_shdr + 0x24);
  uVar43 = (ulong)(uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 |
                  uVar21 << 0x18) /
           (ulong)(uVar60 >> 0x18 | (uVar60 & 0xff0000) >> 8 | (uVar60 & 0xff00) << 8 |
                  uVar60 << 0x18);
  uVar21 = *(uint *)preloc;
  uVar48 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
  uVar21 = *(uint *)(preloc + 4);
  uVar60 = uVar21 >> 0x18;
  uVar49 = uVar60 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
  _Var14 = uVar49 >> 8;
  if (rel_type == 4) {
    local_c4 = 0;
    uVar23 = *(uint *)(preloc + 8);
    local_b0 = 0xffffffff;
    local_c8 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;
    if (relnum + 1 < uVar43) {
      uVar23 = *(uint *)(preloc + 0xc);
      local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18
      ;
      local_c4 = *(uint *)(preloc + 0x10) >> 0x18;
    }
  }
  else if (relnum + 1 < uVar43) {
    local_c8 = 0;
    uVar23 = *(uint *)(preloc + 8);
    local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;
    local_c4 = *(uint *)(preloc + 0xc) >> 0x18;
  }
  else {
    local_c4 = 0;
    local_b0 = 0xffffffff;
    local_c8 = 0;
  }
  symval._8_4_ = 0x80000000;
  symval.u_.value = 0;
  this_00 = (Mips_relobj<32,_false> *)relinfo->object;
  symval.output_symtab_index_ = 0;
  symval.output_dynsym_index_ = 0xffffffff;
  if (gsym == (Sized_symbol<32> *)0x0) {
    object = (_List_node_base **)(ulong)_Var14;
    p_Var12 = (this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl.
              super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p;
    if ((Mips_relobj<32,_false> *)
        (((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.
                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +
         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.
                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -
         (long)p_Var12) * 8) -
        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl
               .super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_offset) <= object) {
                    /* WARNING: Subroutine does not return */
      gold::do_gold_unreachable("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");
    }
    local_ec = (byte)((uVar21 & 0xff0000) >> 0x10);
    uVar29 = 1L << (local_ec & 0x3f);
    uVar43 = p_Var12[uVar49 >> 0xe];
    p_Var12 = (this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.
              _M_impl.super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p;
    uVar59 = uVar29 & uVar43;
    puVar58 = (uint *)(ulong)(uVar59 != 0);
    sVar56 = (size_t)(this_00->local_symbol_is_micromips_).
                     super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                     _M_start.super__Bit_iterator_base._M_offset;
    if ((Mips_relobj<32,_false> *)
        (((ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.
                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +
         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.
                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -
         (long)p_Var12) * 8) - sVar56) <= object) {
LAB_002c821c:
                    /* WARNING: Subroutine does not return */
      gold::do_gold_unreachable("../../gold/mips.cc",0x668,"local_symbol_is_micromips");
    }
    uVar11 = p_Var12[uVar49 >> 0xe];
    uVar21 = (uint)((uVar29 & uVar11) != 0);
    local_e1 = ((uVar43 | uVar11) & uVar29) != 0;
    if (local_e1) {
      object = (_List_node_base **)this_00;
                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */
      symval.u_.value =
           gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,1);
      psymval = &symval;
    }
    if (uVar60 == 100) {
      p_Var55 = (((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.
                super__Rb_tree_header._M_header._M_parent;
      p_Var3 = &(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.
                super__Rb_tree_header;
      if (p_Var55 != (_Base_ptr)0x0) {
        object = (_List_node_base **)(ulong)_Var14;
        p_Var37 = p_Var55;
        p_Var36 = &p_Var3->_M_header;
        do {
          if (p_Var37[1]._M_color < _Var14) {
            p_Var33 = p_Var37->_M_right;
          }
          else {
            p_Var33 = p_Var37->_M_left;
            p_Var36 = p_Var37;
          }
          p_Var37 = p_Var33;
        } while (p_Var33 != (_Base_ptr)0x0);
        if (((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) &&
           (p_Var36[1]._M_parent != (_Base_ptr)0x0)) {
          p_Var37 = &p_Var3->_M_header;
          if (uVar59 == 0) {
            do {
              p_Var36 = p_Var55;
              if (p_Var36[1]._M_color < _Var14) {
                p_Var55 = p_Var36->_M_right;
                p_Var36 = p_Var37;
              }
              else {
                p_Var55 = p_Var36->_M_left;
              }
              p_Var37 = p_Var36;
            } while (p_Var55 != (_Base_ptr)0x0);
            pMVar42 = (Mips_relobj<32,_false> *)0x0;
            if ((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) {
              pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;
            }
            puVar58 = (uint *)0x0;
            local_f8 = 0;
            goto LAB_002c5870;
          }
          puVar58 = (uint *)0x1;
        }
      }
LAB_002c56d8:
      local_f8 = 0;
      goto LAB_002c56df;
    }
    p_Var3 = &(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.
              super__Rb_tree_header;
    p_Var55 = (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.
              super__Rb_tree_header._M_header._M_parent;
    if (p_Var55 == (_Base_ptr)0x0) goto LAB_002c56d8;
    object = (_List_node_base **)(ulong)_Var14;
    p_Var37 = &p_Var3->_M_header;
    do {
      while (p_Var36 = p_Var55, p_Var36[1]._M_color < _Var14) {
        pp_Var2 = &p_Var36->_M_right;
        p_Var55 = *pp_Var2;
        p_Var36 = p_Var37;
        if (*pp_Var2 == (_Base_ptr)0x0) goto LAB_002c66ba;
      }
      p_Var55 = p_Var36->_M_left;
      p_Var37 = p_Var36;
    } while (p_Var36->_M_left != (_Base_ptr)0x0);
LAB_002c66ba:
    if (((p_Var3 == (_Rb_tree_header *)p_Var36) || (_Var14 < p_Var36[1]._M_color)) ||
       (local_f8 = 0, p_Var36[1]._M_parent == (_Base_ptr)0x0)) goto LAB_002c56d8;
LAB_002c509e:
    local_98._0_1_ = (byte)uVar21;
    local_d0 = (Mips_relobj<32,_false> *)&symval;
    uVar23 = relinfo->data_shndx;
    object = (_List_node_base **)(ulong)uVar23;
    pMVar53 = this_00;
    bVar61 = Mips_relobj<32,_true>::is_mips16_stub_section((Mips_relobj<32,_true> *)this_00,uVar23);
    if ((!bVar61) && (uVar23 != this_00->pdr_shndx_)) {
      if (gsym == (Sized_symbol<32> *)0x0) {
        pMVar53 = (Mips_relobj<32,_false> *)
                  (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.
                  super__Rb_tree_header._M_header._M_parent;
        pMVar42 = (Mips_relobj<32,_false> *)
                  &(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.
                   super__Rb_tree_header;
        pMVar35 = pMVar42;
        if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c64ab;
        do {
          pMVar32 = pMVar53;
          if (*(_Rb_tree_color *)
               ((long)&(((Sized_relobj<32,_true> *)
                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>
                        )->super_Relobj).super_Object.name_.field_2 + 8) < _Var14) {
            pMVar53 = (Mips_relobj<32,_false> *)
                      (((Sized_relobj<32,_true> *)
                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)
                      ->super_Relobj).super_Object.name_.field_2._M_allocated_capacity;
            pMVar32 = pMVar35;
          }
          else {
            pMVar53 = (Mips_relobj<32,_false> *)
                      (((Sized_relobj<32,_true> *)
                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)
                      ->super_Relobj).super_Object.name_._M_string_length;
          }
          pMVar35 = pMVar32;
          if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c6490;
        } while( true );
      }
      if (*(char *)&gsym[1].super_Symbol.name_ == '\0') {
                    /* WARNING: Subroutine does not return */
        gold::do_gold_unreachable("../../gold/mips.cc",0x2d5f,"relocate");
      }
      iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);
      if (iVar25 == -1) {
        pMVar53 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_;
        goto LAB_002c64ab;
      }
      pMVar8 = target->la25_stub_;
      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {
        bVar18 = (pMVar8->super_Output_section_data).super_Output_data.field_0x20;
        uVar49 = bVar18 & 1;
        object = (_List_node_base **)(ulong)uVar49;
        local_e1 = SUB41(uVar49,0);
        if ((bVar18 & 1) != 0) {
          bVar62 = uVar60 == 100;
          symval.u_.value =
               iVar25 + (int)(pMVar8->super_Output_section_data).super_Output_data.address_;
          bVar18 = 0;
          bVar61 = bVar62;
          if ((uVar60 & 0xf7) != 0x85) goto LAB_002c64da;
          psymval = (Symbol_value<32> *)local_d0;
          goto LAB_002c5150;
        }
                    /* WARNING: Subroutine does not return */
        Mips_output_data_plt<64,_false>::mips_entry_address
                  ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);
      }
      la25_stub_section((Target_mips<32,_true> *)pMVar53);
      pMVar45 = extraout_RDX_03;
      goto LAB_002c82c4;
    }
    if (gsym == (Sized_symbol<32> *)0x0) {
LAB_002c56df:
      bVar61 = uVar60 == 100;
      goto LAB_002c4e20;
    }
  }
  else {
    bVar17 = (byte)(gsym->super_Symbol).field_0x39 >> 2;
    bVar61 = (bVar17 & 0x3c) == 0x3c;
    puVar58 = (uint *)(ulong)bVar61;
    bVar62 = (bVar17 & 0x30) == 0x20;
    uVar21 = (uint)bVar62;
    local_e1 = bVar62 || bVar61;
    sVar56 = relnum;
    if ((bVar62 || bVar61) &&
       (VVar20 = gold::Symbol_value<32>::value<true>
                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0), VVar20 != 0)) {
      VVar20 = gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,0)
      ;
      symval.u_.value = VVar20 | 1;
      psymval = &symval;
    }
    else {
      local_e1 = false;
    }
    local_d0 = (Mips_relobj<32,_false> *)&symval;
    sym = (Mips_symbol<64> *)0x0;
    if (uVar60 - 1 < 0xf9) {
      sym = (Mips_symbol<64> *)(ulong)(uint)(int)(char)CSWTCH_4890[uVar60 - 1];
    }
    pMVar53 = (Mips_relobj<32,_false> *)gsym;
                    /* try { // try from 002c4c4a to 002c54e2 has its CatchHandler @ 002c83b5 */
    bVar61 = gold::Symbol::use_plt_offset(&gsym->super_Symbol,(int)sym);
    cVar47 = *(char *)((long)&gsym[1].super_Symbol.symtab_index_ + 1);
    if (bVar61) {
      if (cVar47 != '\0') goto LAB_002c4c60;
      uVar21 = gsym[1].super_Symbol.dynsym_index_;
      pMVar7 = target->plt_;
      if (uVar21 == 0xffffffff) {
        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {
LAB_002c8217:
          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);
          goto LAB_002c821c;
        }
        uVar21 = gsym[1].super_Symbol.plt_offset_;
        if (uVar21 == 0xffffffff) {
                    /* WARNING: Subroutine does not return */
          gold::do_gold_unreachable("../../gold/mips.cc",0x9ed,"comp_entry_address");
        }
        if ((pMVar7->field_0x20 & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          Mips_output_data_plt<64,_false>::mips_entry_address
                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);
        }
        bVar17 = target->field_0x14;
        VVar20 = uVar21 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +
                 pMVar7->plt0_entry_o32[2];
        if (bVar17 == 0) {
                    /* WARNING: Subroutine does not return */
          is_output_micromips((Target_mips<32,_true> *)pMVar53);
        }
        bVar61 = false;
        bVar63 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;
        if (bVar63) {
          puVar58 = (uint *)(ulong)bVar17;
          bVar17 = bVar62;
        }
        uVar21 = (uint)bVar17;
      }
      else {
        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) goto LAB_002c81eb;
        if ((pMVar7->field_0x20 & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          Mips_output_data_plt<64,_false>::mips_entry_address
                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);
        }
        uVar21 = uVar21 + pMVar7->plt0_entry_o32[2];
        puVar58 = (uint *)0x0;
        bVar61 = CARRY4(uVar21,pMVar7->plt_header_size_);
        VVar20 = uVar21 + pMVar7->plt_header_size_;
        bVar63 = VVar20 == 0;
        uVar21 = 0;
      }
LAB_002c4c88:
      symval.u_.value = VVar20;
      psymval = (Symbol_value<32> *)local_d0;
    }
    else {
      bVar61 = false;
      bVar63 = cVar47 == '\0';
      if (!bVar63) {
LAB_002c4c60:
        pMVar6 = target->mips_stubs_;
        if (pMVar6 == (Mips_output_data_mips_stubs<32,_true> *)0x0) {
          mips_stubs_section((Target_mips<32,_true> *)pMVar53);
LAB_002c81eb:
          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);
LAB_002c81f0:
          Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c81f5:
                    /* WARNING: Subroutine does not return */
          gold::do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate");
        }
        if (((pMVar6->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          Mips_output_data_plt<64,_false>::mips_entry_address
                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym);
        }
        uVar23 = *(uint *)((long)&gsym[1].super_Symbol.version_ + 4);
        puVar1 = &(pMVar6->super_Output_section_data).super_Output_data.address_;
        bVar61 = CARRY4(uVar23,(uint)*puVar1);
        VVar20 = uVar23 + (int)*puVar1;
        bVar63 = VVar20 == 0;
        goto LAB_002c4c88;
      }
    }
    pMVar42 = (Mips_relobj<32,_false> *)(gsym->super_Symbol).name_;
    lVar40 = 9;
    pMVar53 = pMVar42;
    pbVar52 = (byte *)"_gp_disp";
    do {
      if (lVar40 == 0) break;
      lVar40 = lVar40 + -1;
      bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)
                          &(pMVar53->super_Sized_relobj_file<32,_false>).
                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;
      bVar61 = bVar17 < *pbVar52;
      bVar63 = bVar17 == *pbVar52;
      pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar53 + (ulong)bVar18 * -2 + 1);
      pbVar52 = pbVar52 + (ulong)bVar18 * -2 + 1;
    } while (bVar63);
    lVar40 = 0xf;
    bVar62 = !bVar61 && !bVar63;
    bVar63 = bVar62 < bVar61;
    bVar64 = bVar62 == bVar61;
    pMVar35 = (Mips_relobj<32,_false> *)"__gnu_local_gp";
    do {
      object = (_List_node_base **)pMVar42;
      pMVar53 = pMVar35;
      if (lVar40 == 0) break;
      lVar40 = lVar40 + -1;
      pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar35 + (ulong)bVar18 * -2 + 1);
      object = (_List_node_base **)((long)pMVar42 + (ulong)bVar18 * -2 + 1);
      bVar4 = *(byte *)&(((Sized_relobj<32,_true> *)
                         &(pMVar35->super_Sized_relobj_file<32,_false>).
                          super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;
      bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)
                          &(pMVar42->super_Sized_relobj_file<32,_false>).
                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;
      bVar63 = bVar17 < bVar4;
      bVar64 = bVar17 == bVar4;
      pMVar42 = (Mips_relobj<32,_false> *)object;
      pMVar35 = pMVar53;
    } while (bVar64);
    if (bVar62 == bVar61) {
      object = (_List_node_base **)(ulong)(byte)this_00->field_0x36c;
      bVar18 = (byte)this_00->field_0x36c >> 1 & 1 ^ 1;
      if ((!bVar63 && !bVar64) == bVar63) {
        if (bVar18 == 0) goto LAB_002c51e0;
      }
      else if (bVar18 == 0) goto LAB_002c5078;
      if (((1 < uVar60 - 0x68) && (1 < uVar60 - 5)) && ((1 < uVar60 - 0x86 && (1 < uVar60 - 0x40))))
      {
        pcVar28 = (char *)gettext(
                                 "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."
                                 );
        object = (_List_node_base **)relnum;
        pMVar53 = (Mips_relobj<32,_false> *)relinfo;
        gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);
      }
      local_f8 = 1;
    }
    else {
      if ((!bVar63 && !bVar64) == bVar63) {
LAB_002c51e0:
        if (target->gp_ == (Sized_symbol<32> *)0x0) {
          symval.u_.value = 0;
          object = (_List_node_base **)target;
        }
        else {
          symval.u_.value = target->gp_->value_;
          object = (_List_node_base **)target;
          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&
              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&
             (object = (_List_node_base **)this_00,
             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {
            symval.u_.value =
                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;
          }
        }
        psymval = (Symbol_value<32> *)local_d0;
      }
LAB_002c5078:
      local_f8 = 0;
    }
    if (uVar60 == 100) {
      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;
      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {
        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;
        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;
        goto LAB_002c5869;
      }
      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))
      goto LAB_002c4d83;
      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;
      pMVar42 = pMVar53;
      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;
      uVar23 = (((Sized_relobj<32,_true> *)
                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
               super_Relobj).super_Object.shnum_;
      if (uVar23 < 2) goto LAB_002c5870;
      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).
                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start
                .super__Bit_iterator_base._M_p;
      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).
                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                       _M_finish.super__Bit_iterator_base._M_offset +
               ((long)(this_00->section_is_mips16_call_fp_stub_).
                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -
               (ulong)(this_00->section_is_mips16_call_fp_stub_).
                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                      _M_start.super__Bit_iterator_base._M_offset;
      if (1 < uVar43) {
        sVar56 = 1;
        uVar29 = 1;
        do {
          pMVar42 = pMVar35;
          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;
          pMVar42 = pMVar53;
          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;
          uVar29 = uVar29 + 1;
        } while (uVar29 != uVar43);
      }
LAB_002c81a7:
                    /* WARNING: Subroutine does not return */
      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");
    }
    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;
    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;
    if (lVar40 != 0) {
      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {
        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);
        if (iVar25 == -1) {
          bVar61 = false;
          goto LAB_002c4e31;
        }
        goto LAB_002c5256;
      }
      goto LAB_002c509e;
    }
  }
  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);
  if (iVar25 == -1) goto LAB_002c52f0;
LAB_002c5256:
  local_d0 = (Mips_relobj<32,_false> *)&symval;
  if ((this_00->field_0x36c & 1) == 0) {
    object = (_List_node_base **)((ulong)puVar58 & 0xff);
    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;
    bVar61 = relocation_needs_la25_stub<32,_true>
                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));
    if (bVar61) {
      pMVar8 = target->la25_stub_;
      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {
        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          Mips_output_data_plt<64,_false>::mips_entry_address
                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);
        }
        local_98._0_1_ = (byte)uVar21;
        bVar61 = uVar60 == 100;
        symval.u_.value =
             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +
             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);
        bVar62 = (bool)((byte)local_98 & bVar61);
        psymval = (Symbol_value<32> *)local_d0;
        object = (_List_node_base **)local_d0;
        goto joined_r0x002c52d3;
      }
      la25_stub_section((Target_mips<32,_true> *)pMVar53);
      goto LAB_002c8217;
    }
  }
LAB_002c52f0:
  bVar61 = uVar60 == 100;
  if (uVar60 != 0x85 && !bVar61) {
    bVar61 = false;
    bVar62 = false;
    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;
    goto LAB_002c5320;
  }
LAB_002c4d98:
  local_d0 = (Mips_relobj<32,_false> *)&symval;
  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&
      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&
     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {
    pMVar7 = target->plt_;
    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {
LAB_002c833d:
      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);
LAB_002c8342:
      gold::Symbol::dynsym_index((Symbol *)pMVar53);
LAB_002c8347:
                    /* WARNING: Subroutine does not return */
      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");
    }
    if ((pMVar7->field_0x20 & 1) == 0) {
                    /* WARNING: Subroutine does not return */
      Mips_output_data_plt<64,_false>::mips_entry_address
                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);
    }
    symval.u_.value =
         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +
         pMVar7->plt0_entry_o32[2];
    if (target->field_0x14 == '\0') {
LAB_002c83ab:
                    /* WARNING: Subroutine does not return */
      is_output_micromips((Target_mips<32,_true> *)pMVar53);
    }
    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;
    psymval = (Symbol_value<32> *)local_d0;
    puVar58 = (uint *)(ulong)bVar62;
    uVar21 = (uint)!bVar62;
    object = (_List_node_base **)target;
  }
LAB_002c4e20:
  local_98._0_1_ = (byte)uVar21;
  bVar62 = (bool)((byte)local_98 & bVar61);
joined_r0x002c52d3:
  if (bVar62 != false) {
    uVar21 = (uint)bVar62;
    goto LAB_002c532c;
  }
LAB_002c4e31:
  bVar62 = bVar61;
  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;
LAB_002c4e43:
  bVar62 = bVar61;
  if (uVar60 - 0x8b < 2) {
LAB_002c5320:
    if ((char)puVar58 != '\0') {
LAB_002c532c:
      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");
      gold::gold_error(pcVar28);
    }
  }
LAB_002c4e56:
  local_98._0_1_ = (byte)uVar21;
  bVar18 = (byte)puVar58;
  if (gsym == (Sized_symbol<32> *)0x0) {
    local_e3 = (bVar18 ^ 1) & bVar62;
    local_e2 = (bool)local_e3;
    if ((bool)local_e3 != false) goto LAB_002c4e81;
    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;
    if ((bool)local_e3 == false) {
LAB_002c5694:
      local_e3 = (byte)local_98 | bVar18;
      if (uVar60 != 4 && uVar60 != 0x25) {
        local_e3 = uVar60 == 4 || uVar60 == 0x25;
      }
      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;
      local_e2 = true;
      goto LAB_002c4e81;
    }
    r_types[0] = 0x85;
    r_types[1] = 0;
    r_types[2] = 0;
    local_f4 = 0x21;
    local_e2 = (bool)local_e3;
LAB_002c581a:
    if (1 < r_types[0] - 0x8b) {
      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);
      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;
LAB_002c4ee9:
      uVar21 = uVar21 << 0x10 | (uint)uVar38;
LAB_002c4ef1:
      *(uint *)view =
           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
    }
  }
  else {
LAB_002c5150:
    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);
    if (bVar61) {
      local_e3 = 0;
    }
    else {
      local_e3 = (bVar18 ^ 1) & bVar62;
      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))
      goto LAB_002c5694;
    }
LAB_002c5175:
    uVar21 = (gsym->super_Symbol).dynsym_index_;
    sVar56 = (size_t)uVar21;
    bVar61 = uVar21 != 0;
    object = (_List_node_base **)(ulong)bVar61;
    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {
      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);
      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;
LAB_002c4e81:
      local_f4 = uVar60 - 100;
      uVar43 = (ulong)(uVar60 - 0x85);
      r_types[1] = 0;
      r_types[2] = 0;
      if (0xc < local_f4) goto LAB_002c55ef;
      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;
      uVar21 = (uint)uVar19;
      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;
      r_types[0] = uVar60;
      if (uVar60 - 0x85 < 0x29) {
        object = (_List_node_base **)0x1b3e1fff3ff;
        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;
        goto LAB_002c4ee9;
      }
      if (uVar60 == 100) {
        local_f4 = 0;
        goto LAB_002c4ee9;
      }
LAB_002c5704:
      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);
      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |
               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;
      goto LAB_002c4ef1;
    }
                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */
    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);
    if ((local_e2) ||
       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))
    goto LAB_002c4e81;
LAB_002c5579:
    if (uVar60 - 0x85 < 0x29) {
      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;
      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);
      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;
      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;
    }
    else {
      uVar43 = 0xffffff8e;
      uVar60 = 0x13;
      local_f4 = 0xffffffaf;
    }
    r_types[1] = 0;
    r_types[2] = 0;
    local_e2 = false;
LAB_002c55ef:
    r_types[0] = uVar60;
    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;
  }
  uVar60 = r_types[0];
  bVar61 = rel_type == 9;
  r_types[1] = 0;
  r_types[2] = 0;
  puVar58 = r_types;
  SVar27 = STATUS_OKAY;
  local_e8 = 0;
  uVar21 = r_types[0];
LAB_002c4f1d:
  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);
  iVar25 = (int)object;
  if (uVar21 == 0) goto LAB_002c5380;
  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;
  bVar62 = local_b0 == uVar48;
  bVar63 = local_c4 != 0;
  cVar47 = bVar62 && bVar63;
  uVar49 = (uint)(byte)cVar47;
  if (this->calculate_only_ == false) {
    this->calculate_only_ = (bool)cVar47;
    switch(uVar21) {
    default:
      goto switchD_002c5379_caseD_0;
    case 1:
      local_c0._0_4_ = local_c8;
      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;
      if (bVar61 != false) {
        local_c0._0_4_ = (uint)uVar19;
        if ((short)uVar19 < 0) {
          local_c0._0_4_ = uVar19 - 0x10000;
        }
      }
      goto LAB_002c70ec;
    case 2:
      goto switchD_002c5379_caseD_2;
    case 3:
      goto switchD_002c4f87_caseD_3;
    case 4:
    case 100:
    case 0x85:
      bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);
      local_c0 = (ulong)local_c8;
      uVar49 = *(uint *)view;
      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8;
      uVar26 = uVar23 | uVar49 << 0x18;
      if (bVar61 == false) {
LAB_002c7644:
        bVar16 = bVar61;
        if (bVar64 == false) {
LAB_002c764c:
          uVar57 = SUB81(pTVar54,0);
          bVar64 = gsym == (Sized_symbol<32> *)0x0;
          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;
          if (bVar64) {
            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);
            uVar49 = 0xf8000000;
            goto LAB_002c73e1;
          }
          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);
          uVar49 = (uint)local_c0 & 0x7ffffff;
          if ((local_c0 & 0x4000000) != 0) {
            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;
          }
          goto LAB_002c73f5;
        }
LAB_002c7cf3:
        bVar61 = bVar16;
        object = (_List_node_base **)this_00;
        VVar20 = gold::Symbol_value<32>::value<true>
                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);
        uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);
        if ((VVar20 & 3) == (uint)(uVar21 == 4)) goto LAB_002c764c;
        pcVar28 = (char *)gettext("JALX to a non-word-aligned address");
        gold::gold_warning(pcVar28);
LAB_002c7d32:
        SVar27 = STATUS_BAD_RELOC;
      }
      else {
        if (uVar21 == 0x85) {
          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;
          goto LAB_002c7644;
        }
        local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);
        bVar16 = bVar64;
        if (bVar64 != false) goto LAB_002c7cf3;
LAB_002c73c9:
        uVar57 = SUB81(pTVar54,0);
        bVar64 = gsym == (Sized_symbol<32> *)0x0;
        if (bVar64) {
          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);
          uVar49 = 0xf0000000;
LAB_002c73e1:
          bVar64 = true;
          uVar49 = address + 4 & uVar49 | (uint)local_c0;
        }
        else {
          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);
          uVar49 = (uint)local_c0 & 0xfffffff;
          if ((local_c0 & 0x8000000) != 0) {
            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;
          }
        }
LAB_002c73f5:
        object = (_List_node_base **)this_00;
        pSVar34 = (Sized_symbol<32> *)psymval;
        VVar20 = gold::Symbol_value<32>::value<true>
                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);
        uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);
        pSVar44 = extraout_RDX_00;
        if (((!bVar64) && (!bVar62 || !bVar63)) &&
           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),
            pSVar44 = extraout_RDX_01, !bVar64 &&
            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,
            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {
LAB_002c7359:
          SVar27 = STATUS_OVERFLOW;
          goto LAB_002c5940;
        }
        uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;
        object = (_List_node_base **)(ulong)uVar23;
        if (local_e3 != 0) {
          uVar26 = uVar26 >> 0x1a;
          uVar46 = (undefined7)((ulong)pSVar44 >> 8);
          if (uVar21 == 100) {
            iVar25 = 7;
            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);
          }
          else if (uVar21 == 0x85) {
            iVar25 = 0x3c;
            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);
          }
          else {
            pSVar44 = (Symbol_value<32> *)
                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));
            iVar25 = 0x1d;
          }
          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {
            pcVar28 = (char *)gettext(
                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."
                                     );
            gold::gold_error(pcVar28);
            goto LAB_002c7d32;
          }
          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;
        }
        if (gold::parameters->options_ == (General_options *)0x0) {
                    /* WARNING: Subroutine does not return */
          Mips_relocate_functions<32,_false>::rel26
                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,
                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,
                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,
                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),
                     (Valtype *)in_stack_fffffffffffffee8);
        }
        if (!bVar62 || !bVar63) goto LAB_002c5ccb;
        SVar27 = STATUS_OKAY;
        this->calculated_value_ = uVar23;
      }
      goto LAB_002c5940;
    case 5:
    case 0x68:
    case 0x86:
      goto switchD_002c5379_caseD_5;
    case 6:
    case 0x69:
    case 0x87:
    case 0x9d:
      local_c0 = (ulong)local_c8;
      in_stack_fffffffffffffed0 = *(uint *)view;
      uVar23 = (in_stack_fffffffffffffed0 & 0xff0000) >> 8;
      uVar49 = in_stack_fffffffffffffed0 >> 0x18 | uVar23;
      in_stack_fffffffffffffee0 = (_List_node_base *)(ulong)uVar49;
      if (bVar61 != false) {
        object = (_List_node_base **)(ulong)uVar49;
        uVar26 = uVar49 - 0x10000;
        if ((uVar23 & 0x8000) == 0) {
          uVar26 = uVar49;
        }
        local_c0 = (ulong)uVar26;
      }
      goto LAB_002c7171;
    case 7:
    case 8:
    case 0x65:
    case 0x88:
    case 0x89:
    case 0xac:
      local_c0._0_4_ = local_c8;
      pSVar34 = target->gp_;
      if (pSVar34 != (Sized_symbol<32> *)0x0) goto LAB_002c7253;
      VVar39 = 0;
LAB_002c7297:
      uVar49 = *(uint *)view;
      uVar26 = (uVar49 & 0xff0000) >> 8;
      uVar23 = uVar49 >> 0x18 | uVar26;
      uVar49 = uVar23 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;
      local_c8 = (uint)local_c0;
      if (bVar61 != false) {
        if (uVar21 == 0xac) {
          local_c0._0_4_ = uVar49 * 4 & 0x1fc;
        }
        else {
          local_c0._0_4_ = uVar23 - 0x10000;
          if ((uVar26 & 0x8000) == 0) {
            local_c0._0_4_ = uVar23;
          }
        }
      }
      goto LAB_002c72d4;
    case 9:
    case 0x66:
    case 0x8a:
      goto switchD_002c5379_caseD_9;
    case 10:
      goto LAB_002c6a55;
    case 0xb:
    case 0x67:
    case 0x8e:
      goto switchD_002c5379_caseD_b;
    case 0xc:
      goto switchD_002c5379_caseD_c;
    case 0x12:
      goto switchD_002c5379_caseD_12;
    case 0x13:
    case 0x91:
    case 0xf9:
      goto switchD_002c5379_caseD_13;
    case 0x14:
    case 0x92:
      goto switchD_002c5379_caseD_14;
    case 0x15:
    case 0x93:
      goto switchD_002c5379_caseD_15;
    case 0x16:
    case 0x1e:
    case 0x94:
    case 0x99:
      goto switchD_002c5379_caseD_16;
    case 0x17:
    case 0x1f:
    case 0x95:
    case 0x9a:
      goto switchD_002c5379_caseD_17;
    case 0x18:
    case 0x96:
      local_c0._0_4_ = local_c8;
      if (bVar61 != false) {
        uVar10 = *(undefined8 *)view;
        local_c0._0_4_ =
             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |
             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;
      }
      goto LAB_002c6b1a;
    case 0x1c:
    case 0x97:
      goto LAB_002c59bd;
    case 0x1d:
    case 0x98:
      goto LAB_002c6b55;
    case 0x25:
    case 0x9c:
      goto switchD_002c5379_caseD_25;
    case 0x27:
    case 0x29:
      goto switchD_002c5379_caseD_27;
    case 0x2a:
    case 0x6a:
    case 0xa2:
      goto switchD_002c5379_caseD_2a;
    case 0x2b:
    case 0x6b:
    case 0xa3:
      goto switchD_002c5379_caseD_2b;
    case 0x2c:
    case 0x6c:
    case 0xa4:
      goto switchD_002c5379_caseD_2c;
    case 0x2d:
    case 0x6d:
    case 0xa5:
      goto switchD_002c5379_caseD_2d;
    case 0x2e:
    case 0x6e:
    case 0xa6:
      goto switchD_002c5379_caseD_2e;
    case 0x2f:
    case 0x30:
      goto switchD_002c5379_caseD_2f;
    case 0x31:
    case 0x6f:
    case 0xa9:
      goto switchD_002c5379_caseD_31;
    case 0x32:
    case 0x70:
    case 0xaa:
      goto switchD_002c5379_caseD_32;
    case 0x3c:
      goto LAB_002c6f06;
    case 0x3d:
      goto LAB_002c6fd2;
    case 0x3e:
      goto LAB_002c6d53;
    case 0x3f:
      goto LAB_002c6e24;
    case 0x40:
      goto switchD_002c5379_caseD_40;
    case 0x41:
      goto LAB_002c6ccf;
    case 0x8b:
      goto LAB_002c6bb8;
    case 0x8c:
      goto LAB_002c6c3e;
    case 0x8d:
      goto LAB_002c69c5;
    case 0xf8:
      if (bVar61 != false) {
        uVar21 = *(uint *)view;
        local_c0._0_4_ =
             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
        goto LAB_002c6ed9;
      }
LAB_002c8390:
      local_c0._0_4_ = local_c8;
      goto LAB_002c6ed9;
    }
  }
  local_c8 = this->calculated_value_;
  object = (_List_node_base **)(ulong)local_c8;
  this->calculate_only_ = (bool)cVar47;
  local_c0 = (ulong)local_c8;
  local_c0._0_4_ = local_c8;
  switch(uVar21) {
  default:
    bVar61 = false;
switchD_002c5379_caseD_0:
    pcVar28 = (char *)gettext("unsupported reloc %u");
    object = (_List_node_base **)relnum;
    gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar21);
    break;
  case 1:
    bVar61 = false;
    local_c0._0_4_ = local_c8;
LAB_002c70ec:
    object = (_List_node_base **)this_00;
    uVar23 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    if ((bool)cVar47) goto LAB_002c59a8;
    *(ushort *)view = (ushort)uVar23 << 8 | (ushort)uVar23 >> 8;
    SVar27 = (Status)(0xffff < uVar23 + 0x8000);
    break;
  case 2:
    bVar61 = false;
switchD_002c5379_caseD_2:
    object = (_List_node_base **)0x2;
    bVar62 = should_apply_static_reloc
                       ((Relocate *)gsym,(Mips_symbol<32> *)0x2,(uint)output_section,
                        (Output_section *)target,pTVar54);
    if (bVar62) {
      bVar62 = this->calculate_only_;
      uVar49 = local_c8;
      if (bVar61 != false) {
        uVar49 = *(uint *)view;
        uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18
        ;
      }
      object = (_List_node_base **)this_00;
      VVar20 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);
      if (bVar62 == false) {
        SVar27 = STATUS_OKAY;
        *(Value *)view =
             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;
      }
      else {
        SVar27 = STATUS_OKAY;
        this->calculated_value_ = VVar20;
      }
    }
    if ((gsym == (Sized_symbol<32> *)0x0) ||
       (((bVar18 = (byte)(gsym->super_Symbol).field_0x39 >> 2, (bVar18 & 0x3c) != 0x3c &&
         ((bVar18 & 0x30) != 0x20)) || (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 1))))
    break;
    pMVar53 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_;
    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
      if (*(char *)&gsym[1].super_Symbol.name_ == '\0') {
                    /* WARNING: Subroutine does not return */
        gold::do_gold_unreachable("../../gold/mips.cc",0x2e46,"relocate");
      }
      symval.u_.value =
           Mips16_stub_section<32,_true>::output_address
                     ((Mips16_stub_section<32,_true> *)pMVar53,
                      (Mips16_stub_section<32,_true> *)
                      &(((Sized_relobj<32,_true> *)
                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>
                        )->super_Relobj).super_Object.name_);
      psymval = &symval;
    }
    local_e8 = gsym[1].super_Symbol.u2_.shndx;
    pMVar51 = target->got_;
    if (pMVar51 != (Mips_output_data_got<32,_true> *)0x0) goto LAB_002c6275;
    goto LAB_002c638e;
  case 3:
switchD_002c4f87_caseD_3:
                    /* WARNING: Subroutine does not return */
    gold::do_gold_unreachable("../../gold/mips.cc",0x2e62,"relocate");
  case 4:
  case 100:
  case 0x85:
    bVar61 = false;
    bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);
    uVar49 = *(uint *)view;
    uVar26 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;
    goto LAB_002c7644;
  case 5:
  case 0x68:
  case 0x86:
    goto switchD_002c4f87_caseD_5;
  case 6:
  case 0x69:
  case 0x87:
  case 0x9d:
    bVar61 = false;
    in_stack_fffffffffffffed0 = *(uint *)view;
    in_stack_fffffffffffffee0 =
         (_List_node_base *)
         (ulong)(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8);
LAB_002c7171:
    if (rel_type == 9) {
      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;
      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs !=
          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)
      {
        do {
          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {
            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);
            in_stack_fffffffffffffee8 =
                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)
            ;
            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);
            if (!bVar62) goto LAB_002c7bc0;
            in_stack_fffffffffffffed8 = local_108[1]._M_next;
            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;
            MVar5 = *(Mips_address *)&local_108[2]._M_prev;
            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;
            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);
            address_00 = *(Mips_address *)&local_108[3]._M_prev;
            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);
            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle
                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,
                       SUB81(in_stack_fffffffffffffec0,0));
            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16
                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,
                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,
                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,
                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);
            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);
            Mips_relocate_functions<32,_true>::mips_reloc_shuffle
                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);
            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;
            p_Var31 = local_108->_M_next;
            _DAT_0067db50 = _DAT_0067db50 + -1;
            std::__detail::_List_node_base::_M_unhook(local_108);
            operator_delete(local_108);
            local_108 = p_Var31;
          }
          else {
LAB_002c7bc0:
            local_108 = local_108->_M_next;
          }
        } while (local_108 !=
                 (_List_node_base *)
                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);
      }
      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;
      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;
      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs !=
          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)
      {
        do {
          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {
            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);
            in_stack_fffffffffffffee8 =
                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)
            ;
            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);
            if (!bVar62) goto LAB_002c7d70;
            in_stack_fffffffffffffed8 = local_108[1]._M_next;
            MVar5 = *(Mips_address *)&local_108[2]._M_prev;
            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;
            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;
            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);
            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle
                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,
                       jal_shuffle);
            sVar56 = local_c0;
            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local
                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,
                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,
                                &this->calculated_value_);
            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);
            Mips_relocate_functions<32,_true>::mips_reloc_shuffle
                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);
            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;
            p_Var31 = local_108->_M_next;
            _DAT_0067db30 = _DAT_0067db30 + -1;
            std::__detail::_List_node_base::_M_unhook(local_108);
            operator_delete(local_108);
            local_108 = p_Var31;
          }
          else {
LAB_002c7d70:
            local_108 = local_108->_M_next;
          }
          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;
        } while (local_108 !=
                 (_List_node_base *)
                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);
      }
    }
    if (local_f8._0_1_ == false) {
      object = (_List_node_base **)this_00;
      uVar23 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    }
    else {
      pSVar34 = target->gp_;
      if (uVar21 == 0x69) {
        if (pSVar34 == (Sized_symbol<32> *)0x0) {
          VVar39 = 0;
        }
        else {
          VVar39 = pSVar34->value_;
          object = (_List_node_base **)target;
          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&
              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&
             ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {
            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;
          }
        }
        iVar25 = VVar39 - (address & 0xfffffffc);
      }
      else if ((uVar21 == 0x87) || (uVar21 == 0x9d)) {
        if (pSVar34 == (Sized_symbol<32> *)0x0) {
          VVar39 = 0;
        }
        else {
          VVar39 = pSVar34->value_;
          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&
              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&
             ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {
            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;
          }
        }
        iVar25 = (VVar39 - address) + 3;
      }
      else {
        if (pSVar34 == (Sized_symbol<32> *)0x0) {
          VVar39 = 0;
        }
        else {
          VVar39 = pSVar34->value_;
          object = (_List_node_base **)target;
          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&
              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&
             ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {
            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;
          }
        }
        iVar25 = (VVar39 - address) + 4;
      }
      uVar23 = iVar25 + (uint)local_c0;
    }
    if ((bool)cVar47) goto LAB_002c59a8;
    uVar23 = uVar23 ^ (uint)in_stack_fffffffffffffee0;
    SVar27 = STATUS_OKAY;
    *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ in_stack_fffffffffffffed0;
    break;
  case 7:
  case 8:
  case 0x65:
  case 0x88:
  case 0x89:
  case 0xac:
    pSVar34 = target->gp_;
    if (pSVar34 != (Sized_symbol<32> *)0x0) {
      bVar61 = false;
LAB_002c7253:
      local_c0._0_4_ = local_c8;
      VVar39 = pSVar34->value_;
      if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&
          (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&
         ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {
        VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;
      }
      goto LAB_002c7297;
    }
    bVar61 = false;
    VVar39 = 0;
    uVar49 = *(uint *)view;
    uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;
    local_c0._0_4_ = local_c8;
LAB_002c72d4:
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - VVar39;
    if (gsym == (Sized_symbol<32> *)0x0) {
      uVar23 = uVar23 + this_00->gp_;
      object = (_List_node_base **)this_00;
    }
    uVar26 = (uVar23 ^ uVar49) & 0xffff;
    if (uVar21 == 0xac) {
      uVar26 = (uVar23 ^ uVar49) & 0x7f;
    }
    uVar26 = uVar49 ^ uVar26;
    if ((bool)cVar47) goto LAB_002c59a8;
    *(uint *)view =
         uVar49 >> 0x18 | (uVar26 & 0xff0000) >> 8 | (uVar26 & 0xff00) << 8 | uVar26 << 0x18;
    if (0xffff < uVar23 + 0x8000) {
      pcVar28 = (char *)gettext(
                               "small-data section exceeds 64KB; lower small-data size limit (see option -G)"
                               );
      gold::gold_error(pcVar28);
      goto LAB_002c7359;
    }
LAB_002c5c87:
    SVar27 = STATUS_OKAY;
    break;
  case 9:
  case 0x66:
  case 0x8a:
    goto switchD_002c4f87_caseD_9;
  case 10:
    bVar61 = false;
LAB_002c6a55:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 4;
      uVar26 = uVar23 & 0x3fffc;
      local_c0._0_4_ = uVar26 - 0x40000;
      if ((uVar23 & 0x20000) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address >> 2;
    if ((bool)cVar47) goto LAB_002c59a8;
    uVar49 = uVar49 ^ uVar23;
    *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;
    object = (_List_node_base **)this_00;
    VVar24 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    SVar27 = STATUS_PCREL_UNALIGNED;
    if ((VVar24 & 3) == 0) {
      SVar27 = (Status)(0x3ffff < (VVar20 - address) + 0x20000);
    }
    break;
  case 0xb:
  case 0x67:
  case 0x8e:
    bVar61 = false;
switchD_002c5379_caseD_b:
    if (gsym == (Sized_symbol<32> *)0x0) {
LAB_002c82dc:
                    /* WARNING: Subroutine does not return */
      gold::do_gold_unreachable("../../gold/mips.cc",0x2f3d,"relocate");
    }
    if (target->got_ == (Mips_output_data_got<32,_true> *)0x0) {
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
      goto LAB_002c82dc;
    }
    local_e8 = Mips_output_data_got<32,_true>::got_offset
                         (target->got_,&gsym->super_Symbol,0,(Mips_relobj<32,_true> *)this_00);
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
LAB_002c6206:
      object = (_List_node_base **)(ulong)local_e8;
      uVar49 = Mips_output_data_got<32,_true>::gp_offset
                         ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,
                          (Mips_relobj<32,_true> *)this_00);
      if (this->calculate_only_ != false) goto LAB_002c67b0;
      uVar23 = *(uint *)view;
      uVar26 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;
      *(uint *)view = ((uVar26 & 0xff00) << 8 | uVar26 << 0x18) ^ uVar23;
      SVar27 = (Status)(0xffff < uVar49 + 0x8000);
      goto LAB_002c624f;
    }
    goto LAB_002c81f0;
  case 0xc:
    bVar61 = false;
switchD_002c5379_caseD_c:
    if (target->gp_ == (Sized_symbol<32> *)0x0) {
      VVar39 = 0;
    }
    else {
      VVar39 = target->gp_->value_;
      if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&
          (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&
         ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {
        VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;
      }
    }
    uVar21 = *(uint *)view;
    uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
    if (bVar61 == false) {
      uVar21 = local_c8;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21);
    uVar23 = (VVar20 + this_00->gp_) - VVar39;
    if (!bVar62 || !bVar63) {
LAB_002c5ccb:
      uVar23 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;
      pRVar50 = (Relocate *)view;
LAB_002c5c85:
      pRVar50->calculated_value_ = uVar23;
      goto LAB_002c5c87;
    }
    goto LAB_002c59a8;
  case 0x12:
    bVar61 = false;
switchD_002c5379_caseD_12:
    object = (_List_node_base **)0x12;
    bVar62 = should_apply_static_reloc
                       ((Relocate *)gsym,(Mips_symbol<32> *)0x12,(uint)output_section,
                        (Output_section *)target,pTVar54);
    if (bVar62) {
      cVar47 = this->calculate_only_;
      VVar20 = local_c8;
      if (bVar61 != false) {
        uVar10 = *(undefined8 *)view;
        VVar20 = (uint)(byte)((ulong)uVar10 >> 0x38) |
                 ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |
                 (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;
      }
      goto LAB_002c6b22;
    }
    break;
  case 0x13:
  case 0x91:
  case 0xf9:
    bVar61 = false;
switchD_002c5379_caseD_13:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (gsym != (Sized_symbol<32> *)0x0) {
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        object = (_List_node_base **)gsym;
        local_e8 = Mips_output_data_got<32,_true>::got_offset
                             ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,
                              (Mips_relobj<32,_true> *)this_00);
        goto LAB_002c6043;
      }
      goto LAB_002c827b;
    }
    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8364;
    object = (_List_node_base **)(ulong)_Var14;
    local_e8 = (*(((Sized_relobj<32,_true> *)
                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
                 super_Relobj).super_Object._vptr_Object[0x2c])
                         (this_00,object,0,(long)(int)local_c8);
LAB_002c6043:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8276;
    object = (_List_node_base **)(ulong)local_e8;
    uVar23 = Mips_output_data_got<32,_true>::gp_offset
                       ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,
                        (Mips_relobj<32,_true> *)this_00);
    if (uVar21 == 0xf9) {
      pRVar50 = this;
      if (this->calculate_only_ == false) goto LAB_002c5ccb;
      goto LAB_002c5c85;
    }
    if (this->calculate_only_ == false) goto LAB_002c6098;
    goto LAB_002c59a8;
  case 0x14:
  case 0x92:
    bVar61 = false;
switchD_002c5379_caseD_14:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    uVar23 = uVar49;
    if (bVar61 == false) {
      uVar23 = local_c8;
    }
    pMVar53 = (Mips_relobj<32,_false> *)psymval;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);
    value = VVar20 + 0x8000 & 0xffff0000;
    pMVar45 = (Mips_relobj<32,_true> *)target->got_;
    if (pMVar45 != (Mips_relobj<32,_true> *)0x0) {
      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.
          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {
        pMVar53 = *(Mips_relobj<32,_false> **)
                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.
                    local_got_offsets_._M_h._M_rehash_policy;
      }
      else {
        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;
      }
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        uVar23 = Mips_got_info<32,_true>::get_got_page_offset
                           ((Mips_got_info<32,_true> *)pMVar53,value,
                            (Mips_output_data_got<32,_true> *)pMVar45);
        pMVar53 = (Mips_relobj<32,_false> *)target->got_;
        if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
          object = (_List_node_base **)(ulong)uVar23;
          uVar23 = Mips_output_data_got<32,_true>::gp_offset
                             ((Mips_output_data_got<32,_true> *)pMVar53,uVar23,
                              (Mips_relobj<32,_true> *)this_00);
          if ((bool)cVar47) goto LAB_002c59a8;
          uVar49 = uVar49 ^ uVar23;
          uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;
          goto LAB_002c60ab;
        }
        goto LAB_002c8280;
      }
      goto LAB_002c8285;
    }
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c81a2:
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
    goto LAB_002c81a7;
  case 0x15:
  case 0x93:
    bVar61 = false;
switchD_002c5379_caseD_15:
    uVar21 = *(uint *)view;
    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    uVar26 = uVar23;
    if (bVar61 == false) {
      uVar26 = local_c8;
    }
    if (local_e2 != false) {
      object = (_List_node_base **)this_00;
      pTVar54 = (Target_mips<32,_true> *)psymval;
      VVar20 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);
      uVar41 = VVar20 + 0x8000 & 0xffff0000;
      pMVar45 = (Mips_relobj<32,_true> *)target->got_;
      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {
        Target_mips<32,_true>::got_section(pTVar54);
        goto LAB_002c8390;
      }
      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.
          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {
        pMVar53 = *(Mips_relobj<32,_false> **)
                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.
                    local_got_offsets_._M_h._M_rehash_policy;
      }
      else {
        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;
      }
      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;
      Mips_got_info<32,_true>::get_got_page_offset
                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45
                );
      object = (_List_node_base **)this_00;
      VVar20 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);
      uVar26 = VVar20 - uVar41;
    }
    if ((bool)cVar47) {
      SVar27 = STATUS_OKAY;
      this->calculated_value_ = uVar26;
    }
    else {
      uVar23 = uVar23 ^ uVar26;
      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;
      SVar27 = (Status)(0xffff < uVar26 + 0x8000);
      object = (_List_node_base **)view;
    }
    break;
  case 0x16:
  case 0x1e:
  case 0x94:
  case 0x99:
    bVar61 = false;
switchD_002c5379_caseD_16:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (gsym == (Sized_symbol<32> *)0x0) {
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        object = (_List_node_base **)(ulong)_Var14;
        local_e8 = (*(((Sized_relobj<32,_true> *)
                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)
                     ->super_Relobj).super_Object._vptr_Object[0x2c])
                             (this_00,object,0,(long)(int)local_c8);
        goto LAB_002c5e6e;
      }
      goto LAB_002c81a2;
    }
    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8271;
    object = (_List_node_base **)gsym;
    local_e8 = Mips_output_data_got<32,_true>::got_offset
                         ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,
                          (Mips_relobj<32,_true> *)this_00);
LAB_002c5e6e:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c826c;
    object = (_List_node_base **)(ulong)local_e8;
    iVar25 = Mips_output_data_got<32,_true>::gp_offset
                       ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,
                        (Mips_relobj<32,_true> *)this_00);
    uVar49 = iVar25 + 0x8000U >> 0x10;
    if (this->calculate_only_ == false) {
      SVar27 = STATUS_OKAY;
      uVar23 = *(uint *)view;
      uVar49 = uVar49 ^ (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8);
      *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;
      goto LAB_002c624f;
    }
LAB_002c67b0:
    this->calculated_value_ = uVar49;
    SVar27 = STATUS_OKAY;
LAB_002c624f:
    if (local_e1 != false) {
      pMVar51 = target->got_;
      if (pMVar51 == (Mips_output_data_got<32,_true> *)0x0) {
LAB_002c638e:
        cVar47 = (char)pMVar51;
        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
switchD_002c4f87_caseD_5:
        bVar61 = false;
switchD_002c5379_caseD_5:
        if (rel_type == 4) {
          sVar56 = (size_t)local_f8;
          object = (_List_node_base **)this_00;
          SVar27 = Mips_relocate_functions<32,_true>::do_relhi16
                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,
                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,
                              &this->calculated_value_);
        }
        else {
          if (rel_type != 9) goto LAB_002c81f5;
          p_Var31 = (_List_node_base *)operator_new(0x40);
          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;
          SVar27 = STATUS_OKAY;
          p_Var31[1]._M_next = (_List_node_base *)view;
          p_Var31[1]._M_prev = (_List_node_base *)this_00;
          p_Var31[2]._M_next = (_List_node_base *)psymval;
          *(uint *)&p_Var31[2]._M_prev = local_c8;
          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;
          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;
          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;
          *(Mips_address *)&p_Var31[3]._M_prev = address;
          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;
          std::__detail::_List_node_base::_M_hook
                    (p_Var31,(_List_node_base *)
                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);
          _DAT_0067db50 = _DAT_0067db50 + 1;
        }
      }
      else {
        if (gsym != (Sized_symbol<32> *)0x0) {
LAB_002c6275:
          if ((char)gsym[1].value_ != '\0') {
            object = (_List_node_base **)this_00;
            pMVar53 = (Mips_relobj<32,_false> *)psymval;
            VVar20 = gold::Symbol_value<32>::value<true>
                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);
            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {
              pMVar30 = pMVar51->primary_got_;
              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {
                iVar25 = pMVar51->master_got_info_->page_gotno_ +
                         pMVar51->master_got_info_->local_gotno_;
              }
              else {
                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;
              }
              uVar21 = (gsym->super_Symbol).dynsym_index_;
              if (uVar21 != 0) {
                *(Value *)(pMVar51->got_view_ +
                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20
                          >> 3)) =
                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |
                     VVar20 << 0x18;
                break;
              }
              goto LAB_002c8342;
            }
            goto LAB_002c8347;
          }
        }
        object = (_List_node_base **)this_00;
        VVar20 = gold::Symbol_value<32>::value<true>
                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);
        *(Value *)(pMVar51->got_view_ + local_e8) =
             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;
      }
    }
    break;
  case 0x17:
  case 0x1f:
  case 0x95:
  case 0x9a:
    bVar61 = false;
switchD_002c5379_caseD_17:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (gsym == (Sized_symbol<32> *)0x0) {
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        object = (_List_node_base **)(ulong)_Var14;
        local_e8 = (*(((Sized_relobj<32,_true> *)
                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)
                     ->super_Relobj).super_Object._vptr_Object[0x2c])
                             (this_00,object,0,(long)(int)local_c8);
        goto LAB_002c5ddf;
      }
LAB_002c8369:
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c836e:
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
      goto LAB_002c8373;
    }
    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
      object = (_List_node_base **)gsym;
      local_e8 = Mips_output_data_got<32,_true>::got_offset
                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,
                            (Mips_relobj<32,_true> *)this_00);
LAB_002c5ddf:
      pMVar53 = (Mips_relobj<32,_false> *)target->got_;
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        object = (_List_node_base **)(ulong)local_e8;
        uVar49 = Mips_output_data_got<32,_true>::gp_offset
                           ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,
                            (Mips_relobj<32,_true> *)this_00);
        if (this->calculate_only_ != false) goto LAB_002c67b0;
        SVar27 = STATUS_OKAY;
        uVar23 = *(uint *)view;
        uVar49 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;
        *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;
        goto LAB_002c624f;
      }
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
    }
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c826c:
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c8271:
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c8276:
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c827b:
    target = (Target_mips<32,_true> *)object;
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c8280:
    value = (Mips_address)target;
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
    pMVar45 = extraout_RDX_02;
LAB_002c8285:
    Mips_output_data_got<32,_true>::get_got_page_offset
              ((Mips_output_data_got<32,_true> *)pMVar53,value,pMVar45);
LAB_002c828a:
                    /* WARNING: Subroutine does not return */
    gold::do_gold_unreachable("../../gold/mips.cc",0x86a,"tls_ldm_offset");
  case 0x18:
  case 0x96:
    bVar61 = false;
LAB_002c6b1a:
    VVar20 = -(uint)local_c0;
LAB_002c6b22:
    object = (_List_node_base **)this_00;
    uVar23 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);
    if (cVar47 != '\0') goto LAB_002c59a8;
    uVar43 = (ulong)uVar23;
    SVar27 = STATUS_OKAY;
    *(ulong *)view =
         (uVar43 & 0xff000000) << 8 | (uVar43 & 0xff0000) << 0x18 | (uVar43 & 0xff00) << 0x28 |
         uVar43 << 0x38;
    break;
  case 0x1c:
  case 0x97:
    bVar61 = false;
LAB_002c59bd:
    uVar21 = *(uint *)view;
    uVar23 = (uVar21 & 0xff0000) >> 8;
    uVar49 = uVar21 >> 0x18 | uVar23;
    local_c0._0_4_ = local_c8;
    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {
      local_c0._0_4_ = uVar49;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = (uint)((ulong)VVar20 + 0x80008000 >> 0x20);
    goto joined_r0x002c59a3;
  case 0x1d:
  case 0x98:
    bVar61 = false;
LAB_002c6b55:
    uVar23 = *(uint *)view;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar49 = (uVar23 & 0xff0000) >> 8;
      uVar21 = uVar23 >> 0x18 | uVar49;
      local_c0._0_4_ = uVar21 - 0x10000;
      if ((uVar49 & 0x8000) == 0) {
        local_c0._0_4_ = uVar21;
      }
    }
    object = (_List_node_base **)this_00;
    gold::Symbol_value<32>::value<true>
              (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    if (!bVar62 || !bVar63) {
      uVar23 = uVar23 & 0xffff;
      pRVar50 = (Relocate *)view;
      goto LAB_002c5c85;
    }
    SVar27 = STATUS_OKAY;
    this->calculated_value_ = 0;
    break;
  case 0x25:
  case 0x9c:
    bVar61 = false;
switchD_002c5379_caseD_25:
    if (gsym != (Sized_symbol<32> *)0x0) {
      bVar62 = (gsym->super_Symbol).dynsym_index_ != 0;
      object = (_List_node_base **)(ulong)bVar62;
      bVar62 = symbol_refs_local(&gsym->super_Symbol,bVar62,true);
      if (!bVar62) break;
      cVar47 = this->calculate_only_;
    }
    VVar20 = 0;
    if (bVar61 == false) {
      VVar20 = local_c8;
    }
    uVar49 = *(uint *)view;
    uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;
    uVar49 = uVar23;
    if (((uVar21 == 0x25) && (local_e3 != 1)) && ((uVar23 == 0x3200008 || (uVar23 == 0x320f809)))) {
      object = (_List_node_base **)this_00;
      VVar20 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);
      if ((VVar20 - address) + 0x1fffc < 0x40000) {
        uVar21 = (VVar20 - address) - 4 >> 2 & 0xffff;
        uVar49 = uVar21 | 0x10000000;
        if (uVar23 != 0x3200008) {
          uVar49 = uVar21 | 0x4110000;
        }
      }
    }
    if (cVar47 == '\0') {
      SVar27 = STATUS_OKAY;
      *(uint *)view =
           uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;
    }
    else {
      this->calculated_value_ = uVar49;
      SVar27 = STATUS_OKAY;
    }
    break;
  case 0x27:
  case 0x29:
    bVar61 = false;
switchD_002c5379_caseD_27:
    uVar21 = *(uint *)view;
    uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
    if (bVar61 == false) {
      uVar21 = local_c8;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21);
    uVar23 = VVar20 - 0x8000;
    if (!bVar62 || !bVar63) goto LAB_002c5ccb;
    goto LAB_002c59a8;
  case 0x2a:
  case 0x6a:
  case 0xa2:
    bVar61 = false;
switchD_002c5379_caseD_2a:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (gsym == (Sized_symbol<32> *)0x0) {
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        local_e8 = (*(((Sized_relobj<32,_true> *)
                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)
                     ->super_Relobj).super_Object._vptr_Object[0x2c])
                             (this_00,(ulong)_Var14,2,(long)(int)local_c8);
        goto LAB_002c5c48;
      }
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
LAB_002c8333:
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
      goto LAB_002c8338;
    }
    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
      local_e8 = Mips_output_data_got<32,_true>::got_offset
                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,2,
                            (Mips_relobj<32,_true> *)this_00);
LAB_002c5c48:
      pMVar53 = (Mips_relobj<32,_false> *)target->got_;
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) goto LAB_002c5c62;
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
    }
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
    goto LAB_002c83ab;
  case 0x2b:
  case 0x6b:
  case 0xa3:
    bVar61 = false;
switchD_002c5379_caseD_2b:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
LAB_002c8364:
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
      goto LAB_002c8369;
    }
    if ((((Sized_relobj<32,_true> *)
         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
        local_got_offsets_)._M_h._M_rehash_policy._M_next_resize == 0) {
      pMVar30 = *(Mips_got_info<32,_true> **)
                 &(((Sized_relobj<32,_true> *)
                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
                  local_got_offsets_)._M_h._M_rehash_policy;
    }
    else {
      pMVar30 = (Mips_got_info<32,_true> *)this_00->got_info_;
    }
    if (pMVar30 == (Mips_got_info<32,_true> *)0x0) goto LAB_002c828a;
    local_e8 = pMVar30->tls_ldm_offset_;
    object = (_List_node_base **)(ulong)local_e8;
    uVar23 = Mips_output_data_got<32,_true>::gp_offset
                       ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,
                        (Mips_relobj<32,_true> *)this_00);
LAB_002c5c74:
    pRVar50 = this;
    if (this->calculate_only_ != false) goto LAB_002c5c85;
LAB_002c6098:
    uVar21 = *(uint *)view;
    uVar49 = (uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8) ^ uVar23;
    uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;
LAB_002c60ab:
    *(uint *)view = uVar21;
    SVar27 = (Status)(0xffff < uVar23 + 0x8000);
    break;
  case 0x2c:
  case 0x6c:
  case 0xa4:
    bVar61 = false;
switchD_002c5379_caseD_2c:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    uVar23 = uVar49;
    if (bVar61 == false) {
      uVar23 = local_c8;
    }
    object = (_List_node_base **)this_00;
    uVar23 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);
    goto LAB_002c5a76;
  case 0x2d:
  case 0x6d:
  case 0xa5:
switchD_002c4f87_caseD_2d:
    bVar61 = false;
switchD_002c5379_caseD_2d:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    uVar23 = uVar49;
    if (bVar61 == false) {
      uVar23 = local_c8;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);
    uVar23 = VVar20 - 0x8000;
    goto joined_r0x002c59a3;
  case 0x2e:
  case 0x6e:
  case 0xa6:
    bVar61 = false;
switchD_002c5379_caseD_2e:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (gsym == (Sized_symbol<32> *)0x0) {
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        local_e8 = (*(((Sized_relobj<32,_true> *)
                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)
                     ->super_Relobj).super_Object._vptr_Object[0x2c])
                             (this_00,(ulong)_Var14,1,(long)(int)local_c8);
        goto LAB_002c5b06;
      }
      goto LAB_002c836e;
    }
    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
      local_e8 = Mips_output_data_got<32,_true>::got_offset
                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,1,
                            (Mips_relobj<32,_true> *)this_00);
LAB_002c5b06:
      pMVar53 = (Mips_relobj<32,_false> *)target->got_;
      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {
        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
        goto switchD_002c4f87_caseD_2d;
      }
LAB_002c5c62:
      object = (_List_node_base **)(ulong)local_e8;
      uVar23 = Mips_output_data_got<32,_true>::gp_offset
                         ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,
                          (Mips_relobj<32,_true> *)this_00);
      goto LAB_002c5c74;
    }
LAB_002c8338:
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
    goto LAB_002c833d;
  case 0x2f:
  case 0x30:
    bVar61 = false;
switchD_002c5379_caseD_2f:
    uVar21 = *(uint *)view;
    uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
    if (bVar61 == false) {
      uVar21 = local_c8;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21);
    uVar23 = VVar20 - 0x7000;
    if ((bool)cVar47) goto LAB_002c59a8;
    SVar27 = STATUS_OKAY;
    *(uint *)view =
         uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | VVar20 << 0x18;
    break;
  case 0x31:
  case 0x6f:
  case 0xa9:
    bVar61 = false;
switchD_002c5379_caseD_31:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    uVar23 = uVar49;
    if (bVar61 == false) {
      uVar23 = local_c8;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);
    uVar23 = VVar20 + 0x1000;
LAB_002c5a76:
    uVar23 = uVar23 >> 0x10;
    goto joined_r0x002c59a3;
  case 0x32:
  case 0x70:
  case 0xaa:
    bVar61 = false;
switchD_002c5379_caseD_32:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    uVar23 = uVar49;
    if (bVar61 == false) {
      uVar23 = local_c8;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);
    uVar23 = VVar20 - 0x7000;
joined_r0x002c59a3:
    if (bVar62 && bVar63) goto LAB_002c59a8;
    *(uint *)view = uVar21 ^ (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18);
    SVar27 = STATUS_OKAY;
    break;
  case 0x3c:
    bVar61 = false;
LAB_002c6f06:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 4;
      uVar26 = uVar23 & 0x7ffffc;
      local_c0._0_4_ = uVar26 - 0x800000;
      if ((uVar23 & 0x400000) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address >> 2;
    if ((bool)cVar47) goto LAB_002c59a8;
    uVar49 = uVar49 ^ uVar23;
    *(uint *)view = uVar21 ^ ((uVar49 & 0x1f0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);
    object = (_List_node_base **)this_00;
    VVar24 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    SVar27 = STATUS_PCREL_UNALIGNED;
    if ((VVar24 & 3) == 0) {
      SVar27 = (Status)(0x7fffff < (VVar20 - address) + 0x400000);
    }
    break;
  case 0x3d:
    bVar61 = false;
LAB_002c6fd2:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 4;
      uVar26 = uVar23 & 0xffffffc;
      local_c0._0_4_ = uVar26 + 0xf0000000;
      if ((uVar23 & 0x8000000) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address >> 2;
    if ((bool)cVar47) goto LAB_002c59a8;
    uVar49 = uVar49 ^ uVar23;
    *(uint *)view =
         uVar21 ^ ((uVar49 & 0x3ffffff) >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8
                  | (uVar49 & 0x3ffffff) << 0x18);
    object = (_List_node_base **)this_00;
    VVar24 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    SVar27 = STATUS_PCREL_UNALIGNED;
    if ((VVar24 & 3) == 0) {
      SVar27 = (Status)(0xfffffff < (VVar20 - address) + 0x8000000);
    }
    break;
  case 0x3e:
    bVar61 = false;
LAB_002c6d53:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 8;
      uVar26 = uVar23 & 0x1ffff8;
      local_c0._0_4_ = uVar26 - 0x200000;
      if ((uVar23 & 0x100000) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar26 = VVar20 - (address & 0xfffffff8);
    uVar23 = uVar26 >> 3;
    if ((bool)cVar47) goto LAB_002c59a8;
    uVar49 = uVar49 ^ uVar23;
    *(uint *)view = uVar21 ^ ((uVar49 & 0x30000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar21 = VVar20 & 7;
joined_r0x002c6ec7:
    SVar27 = STATUS_PCREL_UNALIGNED;
    if (uVar21 == 0) {
      SVar27 = (Status)(0x1fffff < uVar26 + 0x100000);
    }
    break;
  case 0x3f:
    bVar61 = false;
LAB_002c6e24:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 4;
      uVar26 = uVar23 & 0x1ffffc;
      local_c0._0_4_ = uVar26 - 0x200000;
      if ((uVar23 & 0x100000) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar26 = VVar20 - address;
    uVar23 = uVar26 >> 2;
    if (!bVar62 || !bVar63) {
      uVar49 = uVar49 ^ uVar23;
      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);
      object = (_List_node_base **)this_00;
      VVar20 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
      uVar21 = VVar20 & 3;
      goto joined_r0x002c6ec7;
    }
    goto LAB_002c59a8;
  case 0x40:
    bVar61 = false;
switchD_002c5379_caseD_40:
    if (rel_type == 4) {
      uVar21 = *(uint *)view;
      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
      VVar20 = uVar49 << 0x10;
      if (bVar61 == false) {
        VVar20 = local_c8;
      }
      object = (_List_node_base **)this_00;
      VVar20 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);
      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;
      if ((bool)cVar47) goto LAB_002c59a8;
      uVar23 = uVar23 ^ uVar49;
      SVar27 = STATUS_OKAY;
      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;
    }
    else {
      if (rel_type != 9) {
                    /* WARNING: Subroutine does not return */
        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");
      }
      p_Var31 = (_List_node_base *)operator_new(0x40);
      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;
      SVar27 = STATUS_OKAY;
      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;
      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;
      p_Var31[1]._M_next = (_List_node_base *)view;
      p_Var31[1]._M_prev = (_List_node_base *)this_00;
      p_Var31[2]._M_next = (_List_node_base *)psymval;
      *(uint *)&p_Var31[2]._M_prev = local_c8;
      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;
      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;
      *(Mips_address *)&p_Var31[3]._M_prev = address;
      std::__detail::_List_node_base::_M_hook
                (p_Var31,(_List_node_base *)
                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);
      _DAT_0067db10 = _DAT_0067db10 + 1;
    }
    break;
  case 0x41:
    bVar61 = false;
LAB_002c6ccf:
    uVar21 = *(uint *)view;
    uVar23 = (uVar21 & 0xff0000) >> 8;
    uVar49 = uVar21 >> 0x18 | uVar23;
    local_c0._0_4_ = local_c8;
    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {
      local_c0._0_4_ = uVar49;
    }
    if ((rel_type == 9) &&
       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,
       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=
       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))
    {
      do {
        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {
          in_stack_fffffffffffffee0 = local_98[1]._M_next;
          VVar20 = *(Value *)&local_98[2]._M_prev;
          uVar23 = *(uint *)&in_stack_fffffffffffffee0->_M_next;
          in_stack_fffffffffffffed8 = (_List_node_base *)(ulong)uVar23;
          uVar26 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8;
          if (*(char *)((long)&local_98[3]._M_next + 4) != '\0') {
            VVar20 = (uint)local_c0 + uVar26 * 0x10000;
          }
          iVar25 = *(int *)&local_98[3]._M_prev;
          VVar20 = gold::Symbol_value<32>::value<true>
                             ((Symbol_value<32> *)local_98[2]._M_next,
                              (Sized_relobj_file<32,_true> *)local_98[1]._M_prev,VVar20);
          uVar41 = (0x8000 - iVar25) + VVar20 >> 0x10;
          if (bVar62 && bVar63) {
            this->calculated_value_ = uVar41;
          }
          else {
            uVar41 = uVar41 ^ uVar26;
            *(uint *)&in_stack_fffffffffffffee0->_M_next =
                 ((uVar41 & 0xff00) << 8 | uVar41 << 0x18) ^ uVar23;
          }
          in_stack_fffffffffffffee8 = local_98->_M_next;
          _DAT_0067db10 = _DAT_0067db10 + -1;
          std::__detail::_List_node_base::_M_unhook(local_98);
          operator_delete(local_98);
          local_98 = in_stack_fffffffffffffee8;
        }
        else {
          local_98 = local_98->_M_next;
        }
      } while (local_98 !=
               (_List_node_base *)
               &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address;
    if ((bool)cVar47) goto LAB_002c59a8;
    SVar27 = STATUS_OKAY;
    *(uint *)view = (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18) ^ uVar21;
    break;
  case 0x8b:
    bVar61 = false;
LAB_002c6bb8:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 2;
      uVar26 = uVar23 & 0xff;
      local_c0._0_4_ = uVar26 - 0x100;
      if ((uVar23 & 0x80) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address >> 1;
    if ((bool)cVar47) {
LAB_002c78e8:
      SVar27 = STATUS_OKAY;
      this->calculated_value_ = uVar23;
    }
    else {
      *(uint *)view = uVar21 ^ ((uVar23 ^ uVar49) & 0x7f) << 0x18;
      SVar27 = (Status)(0xff < (VVar20 - address) + 0x80);
    }
    break;
  case 0x8c:
    bVar61 = false;
LAB_002c6c3e:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 2;
      uVar26 = uVar23 & 0x7fe;
      local_c0._0_4_ = uVar26 - 0x800;
      if ((uVar23 & 0x400) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address >> 1;
    if ((bool)cVar47) goto LAB_002c78e8;
    uVar23 = uVar23 ^ uVar49;
    *(uint *)view = uVar21 ^ ((uVar23 & 0x300) << 8 | uVar23 << 0x18);
    SVar27 = (Status)(0x7ff < (VVar20 - address) + 0x400);
    break;
  case 0x8d:
    bVar61 = false;
LAB_002c69c5:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 2;
      uVar26 = uVar23 & 0x1fffe;
      local_c0._0_4_ = uVar26 - 0x20000;
      if ((uVar23 & 0x10000) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address >> 1;
    if ((bool)cVar47) goto LAB_002c78e8;
    uVar23 = uVar23 ^ uVar49;
    *(uint *)view = uVar21 ^ ((uVar23 & 0xff00) << 8 | uVar23 << 0x18);
    SVar27 = (Status)(0x1ffff < (VVar20 - address) + 0x10000);
    break;
  case 0xf8:
    bVar61 = false;
LAB_002c6ed9:
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address;
    if (!bVar62 || !bVar63) goto LAB_002c5ccb;
LAB_002c59a8:
    SVar27 = STATUS_OKAY;
    this->calculated_value_ = uVar23;
  }
LAB_002c5940:
  iVar25 = (int)object;
  puVar58 = puVar58 + 1;
  if (&symval == (Symbol_value<32> *)puVar58) {
LAB_002c5380:
    uVar21 = uVar60 - 0x85;
    if (local_f4 < 0xd) {
      uVar49 = *(uint *)view;
      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8;
      uVar26 = (uVar49 & 0xff00) << 8;
      uVar41 = uVar49 << 0x18;
      uVar22 = uVar23 | uVar26 | uVar41;
      uVar43 = (ulong)uVar22;
      uVar19 = (ushort)(uVar22 >> 0x10);
      if (uVar21 < 0x29) {
        if ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) == 0) {
LAB_002c5754:
          uVar19 = uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13);
          uVar43 = (ulong)((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f);
        }
      }
      else if (((uVar60 == 0x85 || uVar60 == 100) || uVar60 == 4) || (uVar60 != 100)) {
        if (uVar60 != 100) goto LAB_002c5754;
        uVar19 = uVar19 >> 5 & 0x1f |
                 (ushort)(uVar22 >> 0xb) & 0x3e0 | (ushort)(uVar41 >> 0x10) & 0xfc00;
      }
LAB_002c5471:
      uVar38 = (ushort)uVar43 << 8 | (ushort)uVar43 >> 8;
      iVar25 = (int)CONCAT62((int6)(uVar43 >> 0x10),uVar38);
      *(ushort *)(view + 2) = uVar38;
      *(ushort *)view = uVar19 << 8 | uVar19 >> 8;
    }
    else if (((uVar21 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) != 0)) &&
            (1 < uVar60 - 0x8b)) {
      uVar21 = *(uint *)view;
      uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
      uVar43 = (ulong)uVar21;
      uVar19 = (ushort)(uVar21 >> 0x10);
      goto LAB_002c5471;
    }
    if (SVar27 == STATUS_OVERFLOW) {
      if (gsym == (Sized_symbol<32> *)0x0) {
        pcVar13 = (((Sized_relobj<32,_true> *)
                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
                  super_Relobj).super_Object.name_._M_dataplus._M_p;
        iVar25 = 0x2c7937;
        pcVar28 = (char *)gettext("relocation overflow: %u against local symbol %u in %s");
        gold::gold_error_at_location<32,_true>
                  (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13);
      }
      else {
        bVar18 = (gsym->super_Symbol).field_0x3a;
        if ((bVar18 & 7) == 0) {
          uVar21 = (gsym->super_Symbol).u2_.shndx;
          if (((gsym->super_Symbol).field_0x3b & 0x20) == 0) {
            bVar61 = gold::Symbol::is_common_shndx(uVar21);
            bVar61 = !bVar61;
          }
          else {
            bVar61 = uVar21 != 0;
          }
        }
        else {
          bVar61 = (bVar18 & 7) != 4;
        }
        if ((bVar61) && (((gsym->super_Symbol).field_0x3a & 7) == 0)) {
          uVar9 = ((gsym->super_Symbol).u1_.output_data)->address_;
          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);
          _Var15._M_p = local_58._M_dataplus._M_p;
          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\' defined in %s");
                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */
          gold::gold_error_at_location<32,_true>
                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9);
          iVar25 = (int)relnum;
          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;
        }
        else {
          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);
          _Var15._M_p = local_58._M_dataplus._M_p;
          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'");
                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */
          gold::gold_error_at_location<32,_true>
                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);
          iVar25 = (int)relnum;
          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;
        }
        operator_delete(local_58._M_dataplus._M_p);
      }
    }
    else if (SVar27 != STATUS_OKAY) {
      if (SVar27 == STATUS_BAD_RELOC) {
        pcVar28 = "unexpected opcode while processing relocation";
      }
      else {
        if (SVar27 != STATUS_PCREL_UNALIGNED) {
                    /* WARNING: Subroutine does not return */
          gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");
        }
        pcVar28 = "unaligned PC-relative relocation";
      }
      pcVar28 = (char *)gettext(pcVar28);
      gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);
      iVar25 = (int)relnum;
    }
LAB_002c53ec:
    gold::Symbol_value<32>::~Symbol_value(&symval,iVar25);
    return true;
  }
  uVar21 = *puVar58;
  goto LAB_002c4f1d;
LAB_002c82c4:
  Mips_output_data_got<32,_true>::get_got_page_offset
            ((Mips_output_data_got<32,_true> *)pMVar53,(Mips_address)object,pMVar45);
LAB_002c82c9:
  if ((char)puVar58 != '\0') goto LAB_002c4d83;
LAB_002c5869:
  pMVar42 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;
LAB_002c5870:
  local_d0 = (Mips_relobj<32,_false> *)&symval;
  symval.u_.value =
       Mips16_stub_section<32,_true>::output_address
                 ((Mips16_stub_section<32,_true> *)pMVar42,
                  (Mips16_stub_section<32,_true> *)
                  &(((Sized_relobj<32,_true> *)
                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
                   super_Relobj).super_Object.name_);
  psymval = (Symbol_value<32> *)local_d0;
  bVar61 = true;
  local_e1 = true;
  object = (_List_node_base **)local_d0;
  goto LAB_002c4e20;
LAB_002c4d83:
  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);
  if (iVar25 != -1) goto LAB_002c5256;
  bVar61 = true;
  goto LAB_002c4d98;
switchD_002c4f87_caseD_9:
  bVar61 = false;
switchD_002c5379_caseD_9:
  if (gsym == (Sized_symbol<32> *)0x0) {
    if (rel_type == 4) {
      sVar56 = 0;
      object = (_List_node_base **)this_00;
      pMVar53 = (Mips_relobj<32,_false> *)view;
      SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local
                         (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,bVar61,0,target,
                          (bool)cVar47,&this->calculated_value_);
    }
    else {
      if (rel_type != 9) {
LAB_002c8373:
                    /* WARNING: Subroutine does not return */
        gold::do_gold_unreachable("../../gold/mips.cc",0x2f66,"relocate");
      }
      pMVar53 = (Mips_relobj<32,_false> *)operator_new(0x40);
      (((Sized_relobj<32,_true> *)
       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).
      super_Object.field_0x3c = 0;
      SVar27 = STATUS_OKAY;
      (((Sized_relobj<32,_true> *)
       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).
      super_Object.shnum_ = 0;
      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;
      (((Sized_relobj<32,_true> *)
       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).
      super_Object.name_._M_string_length = (size_type)view;
      *(Mips_relobj<32,_false> **)
       &(((Sized_relobj<32,_true> *)
         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj
        ).super_Object.name_.field_2 = this_00;
      *(Symbol_value<32> **)
       ((long)&(((Sized_relobj<32,_true> *)
                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
               super_Relobj).super_Object.name_.field_2 + 8) = psymval;
      *(uint *)&(((Sized_relobj<32,_true> *)
                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
                super_Relobj).super_Object.input_file_ = local_c8;
      *(uint *)((long)&(((Sized_relobj<32,_true> *)
                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>
                        )->super_Relobj).super_Object.input_file_ + 4) = uVar21;
      *(_Rb_tree_color *)
       &(((Sized_relobj<32,_true> *)
         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj
        ).super_Object.offset_ = _Var14;
      *(bool *)((long)&(((Sized_relobj<32,_true> *)
                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>
                        )->super_Relobj).super_Object.offset_ + 4) = bVar61;
      std::__detail::_List_node_base::_M_hook
                ((_List_node_base *)pMVar53,
                 (_List_node_base *)
                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);
      _DAT_0067db30 = _DAT_0067db30 + 1;
    }
    goto LAB_002c624f;
  }
  pMVar53 = (Mips_relobj<32,_false> *)target->got_;
  if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8333;
  pSVar34 = gsym;
  local_e8 = Mips_output_data_got<32,_true>::got_offset
                       ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,
                        (Mips_relobj<32,_true> *)this_00);
  local_98._0_1_ = (byte)pSVar34;
  pMVar53 = (Mips_relobj<32,_false> *)target->got_;
  if (pMVar53 != (Mips_relobj<32,_false> *)0x0) goto LAB_002c6206;
  pMVar32 = (Mips_relobj<32,_false> *)
            Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
  pMVar42 = extraout_RDX;
LAB_002c6490:
  uVar21 = (uint)(byte)local_98;
  if ((pMVar42 != pMVar32) &&
     (*(_Rb_tree_color *)
       ((long)&(((Sized_relobj<32,_true> *)
                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
               super_Relobj).super_Object.name_.field_2 + 8) <= _Var14)) {
    pMVar53 = (Mips_relobj<32,_false> *)
              (((Sized_relobj<32,_true> *)
               &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
              super_Relobj).super_Object.input_file_;
  }
LAB_002c64ab:
  local_d0 = (Mips_relobj<32,_false> *)&symval;
  object = (_List_node_base **)
           &(((Sized_relobj<32,_true> *)
             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
            super_Relobj).super_Object.name_;
  symval.u_.value =
       Mips16_stub_section<32,_true>::output_address
                 ((Mips16_stub_section<32,_true> *)pMVar53,(Mips16_stub_section<32,_true> *)object);
  bVar62 = uVar60 == 100;
  puVar58 = (uint *)0x0;
  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c7a61;
  local_e1 = true;
  bVar61 = bVar62;
LAB_002c64da:
  local_d0 = (Mips_relobj<32,_false> *)&symval;
  puVar58 = (uint *)0x0;
  psymval = (Symbol_value<32> *)local_d0;
  goto LAB_002c4e43;
LAB_002c7a61:
  psymval = (Symbol_value<32> *)local_d0;
  local_e1 = true;
  goto LAB_002c4e56;
}



/* WARNING: Type propagation algorithm not settling */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

undefined8
FUN_002c4b00(ulong *param_1,long param_2,int param_3,long param_4,undefined8 param_5,long param_6,
            uint *param_7,undefined8 *param_8,uint *param_9,ulong *param_10,uint param_11)

{
  undefined4 uVar1;
  undefined4 uVar2;
  long *plVar3;
  int *piVar4;
  ulong uVar5;
  uint *puVar6;
  uint uVar7;
  undefined1 *puVar8;
  long *plVar9;
  bool bVar10;
  byte bVar11;
  char cVar12;
  char cVar13;
  char cVar14;
  ushort uVar15;
  uint uVar16;
  uint uVar17;
  undefined4 uVar18;
  uint uVar19;
  int iVar20;
  undefined8 uVar21;
  undefined8 uVar22;
  ulong uVar23;
  long lVar24;
  ulong uVar25;
  long *plVar26;
  long *plVar27;
  long *plVar28;
  ushort uVar29;
  long lVar30;
  int extraout_EDX;
  uint uVar31;
  uint uVar32;
  long *plVar33;
  ulong uVar34;
  uint uVar35;
  uint uVar36;
  ulong *puVar37;
  int iVar38;
  byte *pbVar39;
  undefined8 *puVar40;
  byte *pbVar41;
  char *pcVar42;
  undefined8 uVar43;
  uint *puVar44;
  uint uVar45;
  ulong uVar46;
  uint uVar47;
  bool bVar48;
  bool bVar49;
  bool bVar50;
  bool bVar51;
  byte bVar52;
  uint local_130;
  sbyte local_118;
  undefined8 *local_108;
  uint local_f4;
  byte local_ec;
  uint local_e8;
  byte local_e3;
  byte local_e2;
  bool local_e1;
  uint *local_d0;
  uint local_c8;
  uint local_c4;
  uint local_c0;
  uint local_b0;
  undefined8 *local_98;
  uint local_84;
  uint auStack_80 [2];
  undefined8 local_78;
  undefined4 local_70;
  uint local_68;
  undefined1 *local_58 [2];
  undefined1 auStack_48 [24];
  
  bVar52 = 0;
  uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14);
  uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24);
  uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |
                  uVar17 << 0x18) /
           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |
                  uVar47 << 0x18);
  uVar17 = *param_7;
  uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;
  uVar17 = param_7[1];
  uVar47 = uVar17 >> 0x18;
  uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;
  uVar34 = (ulong)uVar36;
  uVar7 = uVar36 >> 8;
  if (param_3 == 4) {
    local_c4 = 0;
    uVar16 = param_7[2];
    local_b0 = 0xffffffff;
    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;
    if (param_6 + 1U < uVar23) {
      uVar16 = param_7[3];
      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18
      ;
      local_c4 = param_7[4] >> 0x18;
    }
  }
  else if (param_6 + 1U < uVar23) {
    local_c8 = 0;
    uVar16 = param_7[2];
    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;
    local_c4 = param_7[3] >> 0x18;
  }
  else {
    local_c4 = 0;
    local_b0 = 0xffffffff;
    local_c8 = 0;
  }
  local_70 = 0x80000000;
  local_68 = 0;
  plVar3 = *(long **)(param_2 + 0x10);
  local_78 = 0xffffffff00000000;
  if (param_8 == (undefined8 *)0x0) {
    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -
        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {
                    /* WARNING: Subroutine does not return */
      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");
    }
    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);
    uVar25 = 1L << (local_ec & 0x3f);
    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);
    uVar46 = uVar25 & uVar23;
    puVar44 = (uint *)(ulong)(uVar46 != 0);
    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -
        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {
LAB_002c821c:
                    /* WARNING: Subroutine does not return */
      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");
    }
    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);
    uVar17 = (uint)((uVar25 & uVar5) != 0);
    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;
    if (local_e1) {
                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */
      local_68 = FUN_001d7270(param_9,plVar3,1);
      param_9 = (uint *)&local_78;
    }
    if (uVar47 == 100) {
      plVar33 = (long *)plVar3[0x69];
      plVar9 = plVar3 + 0x68;
      plVar28 = plVar33;
      plVar27 = plVar9;
      if (plVar33 != (long *)0x0) {
        do {
          if (*(uint *)(plVar28 + 4) < uVar7) {
            plVar26 = (long *)plVar28[3];
          }
          else {
            plVar26 = (long *)plVar28[2];
            plVar27 = plVar28;
          }
          plVar28 = plVar26;
        } while (plVar26 != (long *)0x0);
        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {
          plVar28 = plVar9;
          if (uVar46 == 0) {
            do {
              plVar27 = plVar33;
              if (*(uint *)(plVar27 + 4) < uVar7) {
                plVar33 = (long *)plVar27[3];
                plVar27 = plVar28;
              }
              else {
                plVar33 = (long *)plVar27[2];
              }
              plVar28 = plVar27;
            } while (plVar33 != (long *)0x0);
            lVar30 = 0;
            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {
              lVar30 = plVar27[5];
            }
            puVar44 = (uint *)0x0;
            cVar12 = '\0';
            goto LAB_002c5870;
          }
          puVar44 = (uint *)0x1;
        }
      }
LAB_002c56d8:
      cVar12 = '\0';
      goto LAB_002c56df;
    }
    plVar9 = (long *)plVar3[99];
    plVar33 = plVar3 + 0x62;
    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;
    do {
      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {
        plVar27 = plVar28 + 3;
        plVar9 = (long *)*plVar27;
        plVar28 = plVar33;
        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;
      }
      plVar9 = (long *)plVar28[2];
      plVar33 = plVar28;
    } while ((long *)plVar28[2] != (long *)0x0);
LAB_002c66ba:
    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||
       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;
LAB_002c509e:
    local_98._0_1_ = (byte)uVar17;
    local_d0 = (uint *)&local_78;
    iVar38 = *(int *)(param_2 + 0x30);
    cVar13 = FUN_00297400(plVar3,iVar38);
    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {
      if (param_8 == (undefined8 *)0x0) {
        lVar30 = plVar3[99];
        if (lVar30 == 0) goto LAB_002c64ab;
        do {
          if (*(uint *)(lVar30 + 0x20) < uVar7) {
            lVar30 = *(long *)(lVar30 + 0x18);
          }
          else {
            lVar30 = *(long *)(lVar30 + 0x10);
          }
          if (lVar30 == 0) goto LAB_002c6490;
        } while( true );
      }
      if (*(char *)(param_8 + 9) != '\0') {
        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;
        lVar30 = *(long *)(param_4 + 0x98);
        if (lVar30 != 0) {
          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);
          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {
            bVar49 = uVar47 == 100;
            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);
            bVar52 = 0;
            bVar48 = bVar49;
            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;
            param_9 = local_d0;
            goto LAB_002c5150;
          }
                    /* WARNING: Subroutine does not return */
          FUN_00291e90();
        }
        FUN_00290a30();
        goto LAB_002c82c4;
      }
                    /* WARNING: Subroutine does not return */
      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");
    }
    if (param_8 == (undefined8 *)0x0) {
LAB_002c56df:
      bVar48 = uVar47 == 100;
      goto LAB_002c4e20;
    }
  }
  else {
    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;
    bVar48 = (bVar11 & 0x3c) == 0x3c;
    puVar44 = (uint *)(ulong)bVar48;
    bVar49 = (bVar11 & 0x30) == 0x20;
    uVar17 = (uint)bVar49;
    local_e1 = bVar49 || bVar48;
    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {
      local_68 = FUN_001d7270(param_9,plVar3,0);
      local_68 = local_68 | 1;
      param_9 = (uint *)&local_78;
    }
    else {
      local_e1 = false;
    }
    local_d0 = (uint *)&local_78;
    iVar38 = 0;
    if (uVar47 - 1 < 0xf9) {
      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];
    }
                    /* try { // try from 002c4c4a to 002c54e2 has its CatchHandler @ 002c83b5 */
    cVar12 = FUN_00228fa0(param_8,iVar38);
    if (cVar12 == '\0') {
      bVar48 = false;
      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';
      if (!bVar50) {
LAB_002c4c60:
        lVar30 = *(long *)(param_4 + 0xb8);
        if (lVar30 == 0) {
          FUN_00290a10();
LAB_002c81eb:
          FUN_00290a50();
LAB_002c81f0:
          FUN_00290a70();
LAB_002c81f5:
                    /* WARNING: Subroutine does not return */
          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");
        }
        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          FUN_00291e90();
        }
        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));
        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);
        bVar50 = uVar16 == 0;
        goto LAB_002c4c88;
      }
    }
    else {
      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;
      lVar30 = *(long *)(param_4 + 0x30);
      if (*(int *)(param_8 + 0xd) == -1) {
        if (lVar30 == 0) {
LAB_002c8217:
          FUN_00290a50();
          goto LAB_002c821c;
        }
        if (*(int *)((long)param_8 + 0x6c) == -1) {
                    /* WARNING: Subroutine does not return */
          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");
        }
        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          FUN_00291e90();
        }
        bVar11 = *(byte *)(param_4 + 0x14);
        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +
                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);
        if (bVar11 == 0) {
          FUN_00290d80();
LAB_002c832e:
          FUN_00290a70();
LAB_002c8333:
          FUN_00290a70();
LAB_002c8338:
          FUN_00290a70();
LAB_002c833d:
          FUN_00290a50();
LAB_002c8342:
          FUN_00290e30();
LAB_002c8347:
                    /* WARNING: Subroutine does not return */
          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");
        }
        bVar48 = false;
        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;
        if (bVar50) {
          puVar44 = (uint *)(ulong)bVar11;
          bVar11 = bVar49;
        }
        uVar17 = (uint)bVar11;
      }
      else {
        if (lVar30 == 0) goto LAB_002c81eb;
        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          FUN_00291e90();
        }
        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);
        puVar44 = (uint *)0x0;
        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));
        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);
        bVar50 = uVar16 == 0;
        uVar17 = 0;
      }
LAB_002c4c88:
      local_68 = uVar16;
      param_9 = local_d0;
    }
    lVar30 = 9;
    pbVar39 = (byte *)*param_8;
    pbVar41 = (byte *)"_gp_disp";
    do {
      if (lVar30 == 0) break;
      lVar30 = lVar30 + -1;
      bVar48 = *pbVar39 < *pbVar41;
      bVar50 = *pbVar39 == *pbVar41;
      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;
      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;
    } while (bVar50);
    lVar30 = 0xf;
    bVar49 = !bVar48 && !bVar50;
    bVar50 = bVar49 < bVar48;
    bVar51 = bVar49 == bVar48;
    pbVar39 = (byte *)*param_8;
    pbVar41 = (byte *)"__gnu_local_gp";
    do {
      if (lVar30 == 0) break;
      lVar30 = lVar30 + -1;
      bVar50 = *pbVar39 < *pbVar41;
      bVar51 = *pbVar39 == *pbVar41;
      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;
      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;
    } while (bVar51);
    if (bVar49 == bVar48) {
      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;
      if ((!bVar50 && !bVar51) == bVar50) {
        if (bVar52 == 0) goto LAB_002c51e0;
      }
      else if (bVar52 == 0) goto LAB_002c5078;
      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))
      {
        uVar21 = gettext(
                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."
                        );
        FUN_0034aed0(param_2,param_6,uVar35,uVar21);
      }
      cVar12 = '\x01';
    }
    else {
      if ((!bVar50 && !bVar51) == bVar50) {
LAB_002c51e0:
        if (*(long *)(param_4 + 0x28) == 0) {
          local_68 = 0;
        }
        else {
          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);
          if (((*(long *)(param_4 + 0x20) != 0) &&
              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {
            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);
          }
        }
        param_9 = local_d0;
      }
LAB_002c5078:
      cVar12 = '\0';
    }
    if (uVar47 == 100) {
      lVar24 = param_8[0xf];
      if (lVar24 == 0) {
        if (param_8[0x10] == 0) goto LAB_002c4d83;
        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;
        goto LAB_002c5869;
      }
      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;
      lVar30 = lVar24;
      if (param_8[0x10] == 0) goto LAB_002c5870;
      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;
      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -
               (ulong)*(uint *)(plVar3 + 0x7a);
      if (1 < uVar34) {
        uVar23 = 1;
        do {
          lVar30 = param_8[0x10];
          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)
          goto LAB_002c5870;
          lVar30 = lVar24;
          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;
          uVar23 = uVar23 + 1;
        } while (uVar23 != uVar34);
      }
LAB_002c81a7:
                    /* WARNING: Subroutine does not return */
      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");
    }
    if (param_8[0xe] != 0) {
      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {
        if (*(int *)((long)param_8 + 0x4c) == -1) {
          bVar48 = false;
          goto LAB_002c4e31;
        }
        goto LAB_002c5256;
      }
      goto LAB_002c509e;
    }
  }
  if (*(int *)((long)param_8 + 0x4c) == -1) {
LAB_002c52f0:
    bVar48 = uVar47 == 100;
    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;
    bVar48 = false;
    bVar49 = false;
    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;
    goto LAB_002c5320;
  }
LAB_002c5256:
  local_d0 = (uint *)&local_78;
  uVar36 = (uint)uVar34;
  if (((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&
     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')) {
    lVar30 = *(long *)(param_4 + 0x98);
    if (lVar30 != 0) {
      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {
                    /* WARNING: Subroutine does not return */
        FUN_00291e90();
      }
      local_98._0_1_ = (byte)uVar17;
      bVar48 = uVar47 == 100;
      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +
                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);
      bVar49 = (bool)((byte)local_98 & bVar48);
      param_9 = local_d0;
joined_r0x002c52d3:
      if (bVar49 != false) {
        uVar17 = (uint)bVar49;
        goto LAB_002c532c;
      }
LAB_002c4e31:
      bVar49 = bVar48;
      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;
LAB_002c4e43:
      bVar49 = bVar48;
      if (uVar47 - 0x8b < 2) {
LAB_002c5320:
        if ((char)puVar44 != '\0') {
LAB_002c532c:
          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");
          FUN_0034a750(uVar21);
        }
      }
LAB_002c4e56:
      local_98._0_1_ = (byte)uVar17;
      bVar52 = (byte)puVar44;
      if (param_8 == (undefined8 *)0x0) {
        local_e3 = (bVar52 ^ 1) & bVar49;
        local_e2 = local_e3;
        if (local_e3 != 0) goto LAB_002c4e81;
        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;
        if (local_e3 == 0) {
LAB_002c5694:
          local_e3 = (byte)local_98 | bVar52;
          if (uVar47 != 4 && uVar47 != 0x25) {
            local_e3 = uVar47 == 4 || uVar47 == 0x25;
          }
          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;
          local_e2 = 1;
          goto LAB_002c4e81;
        }
        local_84 = 0x85;
        auStack_80[0] = 0;
        auStack_80[1] = 0;
        local_f4 = 0x21;
        local_e2 = local_e3;
LAB_002c581a:
        if (1 < local_84 - 0x8b) {
          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);
          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;
LAB_002c4ee9:
          uVar17 = uVar17 << 0x10 | (uint)uVar29;
LAB_002c4ef1:
          *(uint *)param_10 =
               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;
        }
      }
      else {
LAB_002c5150:
        cVar13 = FUN_002e7200(param_8);
        if (cVar13 == '\0') {
          local_e3 = (bVar52 ^ 1) & bVar49;
          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))
          goto LAB_002c5694;
        }
        else {
          local_e3 = 0;
        }
LAB_002c5175:
        if (*(char *)((long)param_8 + 100) != '\0') {
          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);
          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))
          goto LAB_002c5579;
LAB_002c4e81:
          local_f4 = uVar47 - 100;
          uVar34 = (ulong)(uVar47 - 0x85);
          auStack_80[0] = 0;
          auStack_80[1] = 0;
          if (0xc < local_f4) goto LAB_002c55ef;
          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;
          uVar17 = (uint)uVar15;
          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;
          local_84 = uVar47;
          if (uVar47 - 0x85 < 0x29) {
            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;
            goto LAB_002c4ee9;
          }
          if (uVar47 == 100) {
            local_f4 = 0;
            goto LAB_002c4ee9;
          }
LAB_002c5704:
          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |
                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |
                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);
          goto LAB_002c4ef1;
        }
                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */
        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);
        if ((local_e2 != 0) ||
           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))
        goto LAB_002c4e81;
LAB_002c5579:
        if (uVar47 - 0x85 < 0x29) {
          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;
          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);
          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;
          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;
        }
        else {
          uVar34 = 0xffffff8e;
          uVar47 = 0x13;
          local_f4 = 0xffffffaf;
        }
        auStack_80[0] = 0;
        auStack_80[1] = 0;
        local_e2 = 0;
LAB_002c55ef:
        local_84 = uVar47;
        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))
        goto LAB_002c581a;
      }
      uVar47 = local_84;
      bVar48 = param_3 == 9;
      auStack_80[0] = 0;
      auStack_80[1] = 0;
      puVar44 = &local_84;
      uVar16 = 0;
      local_e8 = 0;
      uVar17 = local_84;
LAB_002c4f1d:
      if (uVar17 == 0) goto LAB_002c5380;
      bVar49 = local_b0 == uVar35;
      bVar50 = local_c4 != 0;
      cVar13 = bVar49 && bVar50;
      uVar36 = (uint)(byte)cVar13;
      uVar34 = (ulong)uVar36;
      if (*(char *)((long)param_1 + 4) == '\0') {
        *(char *)((long)param_1 + 4) = cVar13;
        switch(uVar17) {
        default:
          goto switchD_002c5379_caseD_0;
        case 1:
          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;
          uVar17 = local_c8;
          if (bVar48 != false) {
            uVar17 = (uint)uVar15;
            if ((short)uVar15 < 0) {
              uVar17 = uVar15 - 0x10000;
            }
          }
          goto LAB_002c70ec;
        case 2:
          goto switchD_002c5379_caseD_2;
        case 3:
          goto switchD_002c4f87_caseD_3;
        case 4:
        case 100:
        case 0x85:
          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);
          uVar36 = (uint)*param_10;
          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;
          uVar45 = uVar16 | uVar36 << 0x18;
          local_c0 = local_c8;
          if (bVar48 == false) {
LAB_002c7644:
            bVar10 = bVar48;
            if (bVar51 == false) {
LAB_002c764c:
              bVar51 = param_8 == (undefined8 *)0x0;
              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;
              if (bVar51) {
                local_118 = 1;
                uVar36 = 0xf8000000;
                goto LAB_002c73e1;
              }
              local_118 = 1;
              uVar36 = local_c0 & 0x7ffffff;
              if ((local_c0 & 0x4000000) != 0) {
                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;
              }
              goto LAB_002c73f5;
            }
LAB_002c7cf3:
            bVar48 = bVar10;
            bVar52 = FUN_001d7270(param_9,plVar3,0);
            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;
            uVar21 = gettext("JALX to a non-word-aligned address");
            FUN_0034a800(uVar21);
LAB_002c7d32:
            uVar16 = 2;
          }
          else {
            if (uVar17 == 0x85) {
              local_c0 = uVar45 * 2 & 0x7fffffe;
              goto LAB_002c7644;
            }
            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;
            bVar10 = bVar51;
            if (bVar51 != false) goto LAB_002c7cf3;
LAB_002c73c9:
            bVar51 = param_8 == (undefined8 *)0x0;
            if (bVar51) {
              local_118 = 2;
              uVar36 = 0xf0000000;
LAB_002c73e1:
              bVar51 = true;
              uVar36 = param_11 + 4 & uVar36 | local_c0;
            }
            else {
              local_118 = 2;
              uVar36 = local_c0 & 0xfffffff;
              if ((local_c0 & 0x8000000) != 0) {
                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;
              }
            }
LAB_002c73f5:
            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);
            if (((!bVar51) && (!bVar49 || !bVar50)) &&
               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&
                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {
LAB_002c7359:
              uVar16 = 1;
              goto LAB_002c5940;
            }
            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;
            if (local_e3 != 0) {
              uVar45 = uVar45 >> 0x1a;
              if (uVar17 == 100) {
                iVar38 = 7;
                bVar51 = uVar45 - 6 < 2;
              }
              else if (uVar17 == 0x85) {
                iVar38 = 0x3c;
                bVar51 = uVar45 - 0x3c < 2;
              }
              else {
                bVar51 = uVar45 == 3 || uVar45 == 0x1d;
                iVar38 = 0x1d;
              }
              if ((!bVar51) && (!bVar49 || !bVar50)) {
                uVar21 = gettext(
                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."
                                );
                FUN_0034a750(uVar21);
                goto LAB_002c7d32;
              }
              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;
            }
            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {
                    /* WARNING: Subroutine does not return */
              FUN_002932f0();
            }
            if (!bVar49 || !bVar50) goto LAB_002c5ccb;
            uVar16 = 0;
            *(uint *)param_1 = uVar19;
          }
          goto LAB_002c5940;
        case 5:
        case 0x68:
        case 0x86:
          goto switchD_002c5379_caseD_5;
        case 6:
        case 0x69:
        case 0x87:
        case 0x9d:
          local_130 = (uint)*param_10;
          uVar16 = (local_130 & 0xff0000) >> 8;
          uVar45 = local_130 >> 0x18 | uVar16;
          uVar19 = local_c8;
          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {
            uVar19 = uVar45;
          }
          goto LAB_002c7171;
        case 7:
        case 8:
        case 0x65:
        case 0x88:
        case 0x89:
        case 0xac:
          lVar30 = *(long *)(param_4 + 0x28);
          if (lVar30 != 0) goto LAB_002c7253;
          iVar38 = 0;
LAB_002c7297:
          uVar36 = (uint)*param_10;
          uVar19 = (uVar36 & 0xff0000) >> 8;
          uVar16 = uVar36 >> 0x18 | uVar19;
          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;
          uVar36 = local_c8;
          if (bVar48 != false) {
            if (uVar17 == 0xac) {
              uVar36 = uVar45 * 4 & 0x1fc;
            }
            else {
              uVar36 = uVar16 - 0x10000;
              if ((uVar19 & 0x8000) == 0) {
                uVar36 = uVar16;
              }
            }
          }
          goto LAB_002c72d4;
        case 9:
        case 0x66:
        case 0x8a:
          goto switchD_002c5379_caseD_9;
        case 10:
          goto LAB_002c6a55;
        case 0xb:
        case 0x67:
        case 0x8e:
          goto switchD_002c5379_caseD_b;
        case 0xc:
          goto switchD_002c5379_caseD_c;
        case 0x12:
          goto switchD_002c5379_caseD_12;
        case 0x13:
        case 0x91:
        case 0xf9:
          goto switchD_002c5379_caseD_13;
        case 0x14:
        case 0x92:
          goto switchD_002c5379_caseD_14;
        case 0x15:
        case 0x93:
          goto switchD_002c5379_caseD_15;
        case 0x16:
        case 0x1e:
        case 0x94:
        case 0x99:
          goto switchD_002c5379_caseD_16;
        case 0x17:
        case 0x1f:
        case 0x95:
        case 0x9a:
          goto switchD_002c5379_caseD_17;
        case 0x18:
        case 0x96:
          local_c0 = local_c8;
          if (bVar48 != false) {
            uVar34 = *param_10;
            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |
                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;
          }
          goto LAB_002c6b1a;
        case 0x1c:
        case 0x97:
          goto LAB_002c59bd;
        case 0x1d:
        case 0x98:
          goto LAB_002c6b55;
        case 0x25:
        case 0x9c:
          goto switchD_002c5379_caseD_25;
        case 0x27:
        case 0x29:
          goto switchD_002c5379_caseD_27;
        case 0x2a:
        case 0x6a:
        case 0xa2:
          goto switchD_002c5379_caseD_2a;
        case 0x2b:
        case 0x6b:
        case 0xa3:
          goto switchD_002c5379_caseD_2b;
        case 0x2c:
        case 0x6c:
        case 0xa4:
          goto switchD_002c5379_caseD_2c;
        case 0x2d:
        case 0x6d:
        case 0xa5:
          goto switchD_002c5379_caseD_2d;
        case 0x2e:
        case 0x6e:
        case 0xa6:
          goto switchD_002c5379_caseD_2e;
        case 0x2f:
        case 0x30:
          goto switchD_002c5379_caseD_2f;
        case 0x31:
        case 0x6f:
        case 0xa9:
          goto switchD_002c5379_caseD_31;
        case 0x32:
        case 0x70:
        case 0xaa:
          goto switchD_002c5379_caseD_32;
        case 0x3c:
          goto LAB_002c6f06;
        case 0x3d:
          goto LAB_002c6fd2;
        case 0x3e:
          goto LAB_002c6d53;
        case 0x3f:
          goto LAB_002c6e24;
        case 0x40:
          goto switchD_002c5379_caseD_40;
        case 0x41:
          goto LAB_002c6ccf;
        case 0x8b:
          goto LAB_002c6bb8;
        case 0x8c:
          goto LAB_002c6c3e;
        case 0x8d:
          goto LAB_002c69c5;
        case 0xf8:
          uVar17 = local_c8;
          if (bVar48 != false) {
            uVar17 = (uint)*param_10;
            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |
                     uVar17 << 0x18;
          }
          goto LAB_002c6ed9;
        }
      }
      local_c8 = (uint)*param_1;
      *(char *)((long)param_1 + 4) = cVar13;
      local_c0 = local_c8;
      switch(uVar17) {
      default:
        bVar48 = false;
switchD_002c5379_caseD_0:
        uVar21 = gettext("unsupported reloc %u");
        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);
        break;
      case 1:
        bVar48 = false;
        uVar17 = local_c8;
LAB_002c70ec:
        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);
        if ((bool)cVar13) goto LAB_002c59a8;
        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;
        uVar16 = (uint)(0xffff < uVar19 + 0x8000);
        break;
      case 2:
        bVar48 = false;
switchD_002c5379_caseD_2:
        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);
        if (cVar13 != '\0') {
          cVar13 = *(char *)((long)param_1 + 4);
          uVar36 = local_c8;
          if (bVar48 != false) {
            uVar36 = (uint)*param_10;
            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |
                     uVar36 << 0x18;
          }
          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);
          if (cVar13 == '\0') {
            uVar16 = 0;
            *(uint *)param_10 =
                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18
            ;
          }
          else {
            uVar16 = 0;
            *(uint *)param_1 = uVar36;
          }
        }
        if ((param_8 == (undefined8 *)0x0) ||
           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&
             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;
        lVar30 = param_8[0xe];
        if (lVar30 != 0) {
          if (*(char *)(param_8 + 9) == '\0') {
                    /* WARNING: Subroutine does not return */
            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");
          }
          local_68 = FUN_00298450(lVar30,lVar30 + 8);
          param_9 = (uint *)&local_78;
        }
        local_e8 = *(uint *)(param_8 + 0xc);
        uVar34 = *(ulong *)(param_4 + 0x20);
        if (uVar34 != 0) goto LAB_002c6275;
        goto LAB_002c638e;
      case 3:
switchD_002c4f87_caseD_3:
                    /* WARNING: Subroutine does not return */
        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");
      case 4:
      case 100:
      case 0x85:
        bVar48 = false;
        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);
        uVar36 = (uint)*param_10;
        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18
        ;
        goto LAB_002c7644;
      case 5:
      case 0x68:
      case 0x86:
        goto switchD_002c4f87_caseD_5;
      case 6:
      case 0x69:
      case 0x87:
      case 0x9d:
        bVar48 = false;
        local_130 = (uint)*param_10;
        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;
        uVar19 = local_c8;
LAB_002c7171:
        if (param_3 == 9) {
          local_108 = DAT_0067db40;
          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {
            do {
              if (uVar7 == *(uint *)(local_108 + 6)) {
                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);
                cVar14 = FUN_0028cc00(uVar18,uVar17);
                if (cVar14 == '\0') goto LAB_002c7bc0;
                uVar21 = local_108[2];
                uVar22 = local_108[4];
                uVar2 = *(undefined4 *)(local_108 + 5);
                uVar43 = local_108[3];
                uVar1 = *(undefined4 *)(local_108 + 7);
                FUN_00296ff0(uVar21,uVar18);
                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);
                FUN_00293050(uVar21,uVar18,0);
                if (uVar16 == 1) goto LAB_002c5940;
                puVar40 = (undefined8 *)*local_108;
                _DAT_0067db50 = _DAT_0067db50 + -1;
                FUN_004a1200(local_108);
                FUN_0049e340(local_108);
                local_108 = puVar40;
              }
              else {
LAB_002c7bc0:
                local_108 = (undefined8 *)*local_108;
              }
            } while ((undefined8 **)local_108 != &DAT_0067db40);
          }
          local_108 = DAT_0067db20;
          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {
            do {
              if (uVar7 == *(uint *)(local_108 + 6)) {
                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);
                cVar14 = FUN_0028cc00(uVar18,uVar17);
                if (cVar14 == '\0') goto LAB_002c7d70;
                uVar21 = local_108[2];
                uVar2 = *(undefined4 *)(local_108 + 5);
                uVar22 = local_108[3];
                uVar43 = local_108[4];
                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);
                FUN_00296ff0(uVar21,uVar18);
                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36
                                      ,param_1);
                FUN_00293050(uVar21,uVar18,0);
                if (uVar16 == 1) goto LAB_002c5940;
                puVar40 = (undefined8 *)*local_108;
                _DAT_0067db30 = _DAT_0067db30 + -1;
                FUN_004a1200(local_108);
                FUN_0049e340(local_108);
                local_108 = puVar40;
              }
              else {
LAB_002c7d70:
                local_108 = (undefined8 *)*local_108;
              }
            } while ((undefined8 **)local_108 != &DAT_0067db20);
          }
        }
        if (cVar12 == '\0') {
          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);
        }
        else {
          lVar30 = *(long *)(param_4 + 0x28);
          if (uVar17 == 0x69) {
            if (lVar30 == 0) {
              iVar38 = 0;
            }
            else {
              iVar38 = *(int *)(lVar30 + 0x40);
              if (((*(long *)(param_4 + 0x20) != 0) &&
                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {
                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);
              }
            }
            iVar38 = iVar38 - (param_11 & 0xfffffffc);
          }
          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {
            if (lVar30 == 0) {
              iVar38 = 0;
            }
            else {
              iVar38 = *(int *)(lVar30 + 0x40);
              if (((*(long *)(param_4 + 0x20) != 0) &&
                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {
                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);
              }
            }
            iVar38 = (iVar38 - param_11) + 3;
          }
          else {
            if (lVar30 == 0) {
              iVar38 = 0;
            }
            else {
              iVar38 = *(int *)(lVar30 + 0x40);
              if (((*(long *)(param_4 + 0x20) != 0) &&
                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {
                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);
              }
            }
            iVar38 = (iVar38 - param_11) + 4;
          }
          uVar19 = iVar38 + uVar19;
        }
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar16 = 0;
        *(uint *)param_10 =
             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;
        break;
      case 7:
      case 8:
      case 0x65:
      case 0x88:
      case 0x89:
      case 0xac:
        lVar30 = *(long *)(param_4 + 0x28);
        if (lVar30 != 0) {
          bVar48 = false;
LAB_002c7253:
          iVar38 = *(int *)(lVar30 + 0x40);
          if (((*(long *)(param_4 + 0x20) != 0) &&
              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {
            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);
          }
          goto LAB_002c7297;
        }
        bVar48 = false;
        iVar38 = 0;
        uVar36 = (uint)*param_10;
        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18
        ;
        uVar36 = local_c8;
LAB_002c72d4:
        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);
        uVar19 = iVar20 - iVar38;
        if (param_8 == (undefined8 *)0x0) {
          uVar19 = uVar19 + (int)plVar3[0x6d];
        }
        uVar36 = (uVar19 ^ uVar45) & 0xffff;
        if (uVar17 == 0xac) {
          uVar36 = (uVar19 ^ uVar45) & 0x7f;
        }
        uVar36 = uVar45 ^ uVar36;
        if ((bool)cVar13) goto LAB_002c59a8;
        *(uint *)param_10 =
             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;
        if (0xffff < uVar19 + 0x8000) {
          uVar21 = gettext(
                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"
                          );
          FUN_0034a750(uVar21);
          goto LAB_002c7359;
        }
        goto LAB_002c5c87;
      case 9:
      case 0x66:
      case 0x8a:
        goto switchD_002c4f87_caseD_9;
      case 10:
        bVar48 = false;
LAB_002c6a55:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;
        uVar16 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar36 * 4;
          uVar45 = uVar19 & 0x3fffc;
          uVar16 = uVar45 - 0x40000;
          if ((uVar19 & 0x20000) == 0) {
            uVar16 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 - param_11 >> 2;
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar36 = uVar36 ^ uVar19;
        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;
        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar16 = 3;
        if ((uVar34 & 3) == 0) {
          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);
        }
        break;
      case 0xb:
      case 0x67:
      case 0x8e:
        bVar48 = false;
switchD_002c5379_caseD_b:
        if (param_8 == (undefined8 *)0x0) {
LAB_002c82dc:
                    /* WARNING: Subroutine does not return */
          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");
        }
        if (*(long *)(param_4 + 0x20) == 0) {
          FUN_00290a70();
          goto LAB_002c82dc;
        }
        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);
        lVar30 = *(long *)(param_4 + 0x20);
        if (lVar30 != 0) {
LAB_002c6206:
          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);
          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;
          uVar16 = (uint)*param_10;
          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;
          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;
          uVar16 = (uint)(0xffff < uVar36 + 0x8000);
          goto LAB_002c624f;
        }
        goto LAB_002c81f0;
      case 0xc:
        bVar48 = false;
switchD_002c5379_caseD_c:
        if (*(long *)(param_4 + 0x28) == 0) {
          iVar38 = 0;
        }
        else {
          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);
          if (((*(long *)(param_4 + 0x20) != 0) &&
              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {
            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);
          }
        }
        uVar17 = (uint)*param_10;
        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18
        ;
        if (bVar48 == false) {
          uVar17 = local_c8;
        }
        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);
        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;
        if ((bool)cVar13) goto LAB_002c59a8;
LAB_002c5ccb:
        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18
        ;
        puVar37 = param_10;
        goto LAB_002c5c85;
      case 0x12:
        bVar48 = false;
switchD_002c5379_caseD_12:
        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);
        if (cVar13 != '\0') {
          uVar34 = (ulong)local_c8;
          cVar13 = *(char *)((long)param_1 + 4);
          if (bVar48 != false) {
            uVar34 = *param_10;
            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |
                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |
                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |
                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;
          }
          goto LAB_002c6b22;
        }
        break;
      case 0x13:
      case 0x91:
      case 0xf9:
        bVar48 = false;
switchD_002c5379_caseD_13:
        lVar30 = *(long *)(param_4 + 0x20);
        if (param_8 != (undefined8 *)0x0) {
          if (lVar30 != 0) {
            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);
            goto LAB_002c6043;
          }
          goto LAB_002c827b;
        }
        if (lVar30 == 0) goto LAB_002c8364;
        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);
LAB_002c6043:
        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;
        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);
        if (uVar17 == 0xf9) {
          puVar37 = param_1;
          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;
          goto LAB_002c5c85;
        }
        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;
        goto LAB_002c6098;
      case 0x14:
      case 0x92:
        bVar48 = false;
switchD_002c5379_caseD_14:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar16 = uVar36;
        if (bVar48 == false) {
          uVar16 = local_c8;
        }
        FUN_001d7270(param_9,plVar3,uVar16);
        lVar30 = *(long *)(param_4 + 0x20);
        if (lVar30 != 0) {
          if (*(long *)(lVar30 + 0xd0) == 0) {
            lVar30 = *(long *)(lVar30 + 200);
          }
          else {
            lVar30 = plVar3[0x6e];
          }
          if (lVar30 == 0) goto LAB_002c8285;
          uVar18 = FUN_002c47d0();
          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;
          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);
          if ((bool)cVar13) goto LAB_002c59a8;
          uVar36 = uVar36 ^ uVar19;
          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;
          goto LAB_002c60ab;
        }
        FUN_00290a70();
LAB_002c81a2:
        FUN_00290a70();
        goto LAB_002c81a7;
      case 0x15:
      case 0x93:
        bVar48 = false;
switchD_002c5379_caseD_15:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar19 = uVar36;
        if (bVar48 == false) {
          uVar19 = local_c8;
        }
        if (local_e2 != 0) {
          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);
          lVar30 = *(long *)(param_4 + 0x20);
          if (lVar30 == 0) {
            FUN_00290a70();
            uVar17 = local_c8;
            goto LAB_002c6ed9;
          }
          if (*(long *)(lVar30 + 0xd0) == 0) {
            lVar30 = *(long *)(lVar30 + 200);
          }
          else {
            lVar30 = plVar3[0x6e];
          }
          if (lVar30 == 0) goto LAB_002c82c4;
          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);
          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);
          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);
        }
        if ((bool)cVar13) {
          uVar16 = 0;
          *(uint *)param_1 = uVar19;
        }
        else {
          uVar36 = uVar36 ^ uVar19;
          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;
          uVar16 = (uint)(0xffff < uVar19 + 0x8000);
        }
        break;
      case 0x16:
      case 0x1e:
      case 0x94:
      case 0x99:
        bVar48 = false;
switchD_002c5379_caseD_16:
        lVar30 = *(long *)(param_4 + 0x20);
        if (param_8 == (undefined8 *)0x0) {
          if (lVar30 != 0) {
            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);
            goto LAB_002c5e6e;
          }
          goto LAB_002c81a2;
        }
        if (lVar30 == 0) goto LAB_002c8271;
        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);
LAB_002c5e6e:
        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;
        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);
        uVar36 = iVar38 + 0x8000U >> 0x10;
        if (*(char *)((long)param_1 + 4) == '\0') {
          uVar16 = 0;
          uVar19 = (uint)*param_10;
          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);
          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;
          goto LAB_002c624f;
        }
LAB_002c67b0:
        *(uint *)param_1 = uVar36;
        uVar16 = 0;
LAB_002c624f:
        if (local_e1 != false) {
          uVar34 = *(ulong *)(param_4 + 0x20);
          if (uVar34 == 0) {
LAB_002c638e:
            FUN_00290a70();
switchD_002c4f87_caseD_5:
            bVar48 = false;
switchD_002c5379_caseD_5:
            if (param_3 == 4) {
              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0
                                    ,param_4,uVar34 & 0xff,param_1);
            }
            else {
              if (param_3 != 9) goto LAB_002c81f5;
              lVar30 = FUN_0049cb70(0x40);
              uVar16 = 0;
              *(ulong **)(lVar30 + 0x10) = param_10;
              *(long **)(lVar30 + 0x18) = plVar3;
              *(uint **)(lVar30 + 0x20) = param_9;
              *(uint *)(lVar30 + 0x28) = local_c8;
              *(uint *)(lVar30 + 0x2c) = uVar17;
              *(uint *)(lVar30 + 0x30) = uVar7;
              *(bool *)(lVar30 + 0x34) = bVar48;
              *(uint *)(lVar30 + 0x38) = param_11;
              *(char *)(lVar30 + 0x3c) = cVar12;
              FUN_004a11e0(lVar30,&DAT_0067db40);
              _DAT_0067db50 = _DAT_0067db50 + 1;
            }
          }
          else {
            if (param_8 != (undefined8 *)0x0) {
LAB_002c6275:
              if (*(char *)(param_8 + 0x11) != '\0') {
                uVar17 = FUN_001d7270(param_9,plVar3,0);
                if (*(int *)((long)param_8 + 0x5c) != 2) {
                  piVar4 = *(int **)(uVar34 + 0xd0);
                  if (piVar4 == (int *)0x0) {
                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);
                  }
                  else {
                    iVar38 = piVar4[1] + *piVar4;
                  }
                  if (*(int *)(param_8 + 4) != 0) {
                    *(uint *)(*(long *)(uVar34 + 0xb8) +
                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +
                                            iVar38 + 2) * 0x20) >> 3)) =
                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |
                         uVar17 << 0x18;
                    break;
                  }
                  goto LAB_002c8342;
                }
                goto LAB_002c8347;
              }
            }
            uVar17 = FUN_001d7270(param_9,plVar3,0);
            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =
                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18
            ;
          }
        }
        break;
      case 0x17:
      case 0x1f:
      case 0x95:
      case 0x9a:
        bVar48 = false;
switchD_002c5379_caseD_17:
        lVar30 = *(long *)(param_4 + 0x20);
        if (param_8 == (undefined8 *)0x0) {
          if (lVar30 != 0) {
            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);
            goto LAB_002c5ddf;
          }
LAB_002c8369:
          FUN_00290a70();
LAB_002c836e:
          FUN_00290a70();
          goto LAB_002c8373;
        }
        if (lVar30 != 0) {
          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);
LAB_002c5ddf:
          if (*(long *)(param_4 + 0x20) != 0) {
            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);
            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;
            uVar16 = 0;
            uVar19 = (uint)*param_10;
            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;
            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;
            goto LAB_002c624f;
          }
          FUN_00290a70();
        }
        FUN_00290a70();
LAB_002c826c:
        FUN_00290a70();
LAB_002c8271:
        FUN_00290a70();
LAB_002c8276:
        FUN_00290a70();
LAB_002c827b:
        FUN_00290a70();
LAB_002c8280:
        FUN_00290a70();
LAB_002c8285:
        FUN_00293370();
LAB_002c828a:
                    /* WARNING: Subroutine does not return */
        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");
      case 0x18:
      case 0x96:
        bVar48 = false;
LAB_002c6b1a:
        uVar34 = (ulong)-local_c0;
LAB_002c6b22:
        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);
        uVar19 = (uint)uVar34;
        if (cVar13 != '\0') goto LAB_002c59a8;
        uVar16 = 0;
        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |
                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;
        break;
      case 0x1c:
      case 0x97:
        bVar48 = false;
LAB_002c59bd:
        uVar17 = (uint)*param_10;
        uVar16 = (uVar17 & 0xff0000) >> 8;
        uVar36 = uVar17 >> 0x18 | uVar16;
        uVar19 = local_c8;
        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {
          uVar19 = uVar36;
        }
        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);
        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);
        goto joined_r0x002c59a3;
      case 0x1d:
      case 0x98:
        bVar48 = false;
LAB_002c6b55:
        uVar19 = (uint)*param_10;
        uVar17 = local_c8;
        if (bVar48 != false) {
          uVar16 = (uVar19 & 0xff0000) >> 8;
          uVar36 = uVar19 >> 0x18 | uVar16;
          uVar17 = uVar36 - 0x10000;
          if ((uVar16 & 0x8000) == 0) {
            uVar17 = uVar36;
          }
        }
        FUN_001d7270(param_9,plVar3,uVar17);
        if (!bVar49 || !bVar50) {
          uVar19 = uVar19 & 0xffff;
          puVar37 = param_10;
          goto LAB_002c5c85;
        }
        uVar16 = 0;
        *(uint *)param_1 = 0;
        break;
      case 0x25:
      case 0x9c:
        bVar48 = false;
switchD_002c5379_caseD_25:
        if (param_8 != (undefined8 *)0x0) {
          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);
          if (cVar13 == '\0') break;
          cVar13 = *(char *)((long)param_1 + 4);
        }
        uVar36 = (uint)*param_10;
        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18
        ;
        uVar36 = uVar16;
        if (((uVar17 == 0x25) && (local_e3 != 1)) &&
           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {
          iVar38 = FUN_001d7270(param_9,plVar3);
          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {
            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;
            uVar36 = uVar17 | 0x10000000;
            if (uVar16 != 0x3200008) {
              uVar36 = uVar17 | 0x4110000;
            }
          }
        }
        if (cVar13 == '\0') {
          uVar16 = 0;
          *(uint *)param_10 =
               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;
        }
        else {
          *(uint *)param_1 = uVar36;
          uVar16 = 0;
        }
        break;
      case 0x27:
      case 0x29:
        bVar48 = false;
switchD_002c5379_caseD_27:
        uVar17 = (uint)*param_10;
        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18
        ;
        if (bVar48 == false) {
          uVar17 = local_c8;
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);
        uVar19 = iVar38 - 0x8000;
        if (!bVar49 || !bVar50) goto LAB_002c5ccb;
        goto LAB_002c59a8;
      case 0x2a:
      case 0x6a:
      case 0xa2:
        bVar48 = false;
switchD_002c5379_caseD_2a:
        lVar30 = *(long *)(param_4 + 0x20);
        if (param_8 == (undefined8 *)0x0) {
          if (lVar30 == 0) goto LAB_002c832e;
          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);
LAB_002c5c48:
          lVar30 = *(long *)(param_4 + 0x20);
          if (lVar30 != 0) goto LAB_002c5c62;
          FUN_00290a70();
        }
        else if (lVar30 != 0) {
          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);
          goto LAB_002c5c48;
        }
        FUN_00290a70();
        goto LAB_002c83ab;
      case 0x2b:
      case 0x6b:
      case 0xa3:
        bVar48 = false;
switchD_002c5379_caseD_2b:
        lVar30 = *(long *)(param_4 + 0x20);
        if (lVar30 == 0) {
          FUN_00290a70();
LAB_002c8364:
          FUN_00290a70();
          goto LAB_002c8369;
        }
        if (*(long *)(lVar30 + 0xd0) == 0) {
          lVar24 = *(long *)(lVar30 + 200);
        }
        else {
          lVar24 = plVar3[0x6e];
        }
        if (lVar24 == 0) goto LAB_002c828a;
        local_e8 = *(uint *)(lVar24 + 0x14);
        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);
        goto LAB_002c5c74;
      case 0x2c:
      case 0x6c:
      case 0xa4:
        bVar48 = false;
switchD_002c5379_caseD_2c:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar16 = uVar36;
        if (bVar48 == false) {
          uVar16 = local_c8;
        }
        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);
        goto LAB_002c5a76;
      case 0x2d:
      case 0x6d:
      case 0xa5:
switchD_002c4f87_caseD_2d:
        bVar48 = false;
switchD_002c5379_caseD_2d:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar16 = uVar36;
        if (bVar48 == false) {
          uVar16 = local_c8;
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 - 0x8000;
        goto joined_r0x002c59a3;
      case 0x2e:
      case 0x6e:
      case 0xa6:
        bVar48 = false;
switchD_002c5379_caseD_2e:
        lVar30 = *(long *)(param_4 + 0x20);
        if (param_8 == (undefined8 *)0x0) {
          if (lVar30 == 0) goto LAB_002c836e;
          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);
        }
        else {
          if (lVar30 == 0) goto LAB_002c8338;
          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);
        }
        lVar30 = *(long *)(param_4 + 0x20);
        if (lVar30 == 0) {
          FUN_00290a70();
          goto switchD_002c4f87_caseD_2d;
        }
LAB_002c5c62:
        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);
LAB_002c5c74:
        puVar37 = param_1;
        if (*(char *)((long)param_1 + 4) == '\0') {
LAB_002c6098:
          uVar17 = (uint)*param_10;
          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;
          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;
LAB_002c60ab:
          *(uint *)param_10 = uVar17;
          uVar16 = (uint)(0xffff < uVar19 + 0x8000);
        }
        else {
LAB_002c5c85:
          *(uint *)puVar37 = uVar19;
LAB_002c5c87:
          uVar16 = 0;
        }
        break;
      case 0x2f:
      case 0x30:
        bVar48 = false;
switchD_002c5379_caseD_2f:
        uVar17 = (uint)*param_10;
        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18
        ;
        if (bVar48 == false) {
          uVar17 = local_c8;
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);
        uVar19 = iVar38 - 0x7000;
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar16 = 0;
        *(uint *)param_10 =
             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;
        break;
      case 0x31:
      case 0x6f:
      case 0xa9:
        bVar48 = false;
switchD_002c5379_caseD_31:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar16 = uVar36;
        if (bVar48 == false) {
          uVar16 = local_c8;
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 + 0x1000;
LAB_002c5a76:
        uVar19 = uVar19 >> 0x10;
        goto joined_r0x002c59a3;
      case 0x32:
      case 0x70:
      case 0xaa:
        bVar48 = false;
switchD_002c5379_caseD_32:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar16 = uVar36;
        if (bVar48 == false) {
          uVar16 = local_c8;
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 - 0x7000;
joined_r0x002c59a3:
        if (bVar49 && bVar50) {
LAB_002c59a8:
          uVar16 = 0;
          *(uint *)param_1 = uVar19;
        }
        else {
          *(uint *)param_10 =
               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);
          uVar16 = 0;
        }
        break;
      case 0x3c:
        bVar48 = false;
LAB_002c6f06:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;
        uVar16 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar36 * 4;
          uVar45 = uVar19 & 0x7ffffc;
          uVar16 = uVar45 - 0x800000;
          if ((uVar19 & 0x400000) == 0) {
            uVar16 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 - param_11 >> 2;
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar36 = uVar36 ^ uVar19;
        *(uint *)param_10 =
             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);
        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar16 = 3;
        if ((uVar34 & 3) == 0) {
          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);
        }
        break;
      case 0x3d:
        bVar48 = false;
LAB_002c6fd2:
        uVar17 = (uint)*param_10;
        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18
        ;
        uVar36 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar16 * 4;
          uVar45 = uVar19 & 0xffffffc;
          uVar36 = uVar45 + 0xf0000000;
          if ((uVar19 & 0x8000000) == 0) {
            uVar36 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);
        uVar19 = iVar38 - param_11 >> 2;
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar16 = uVar16 ^ uVar19;
        *(uint *)param_10 =
             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |
                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);
        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);
        uVar16 = 3;
        if ((uVar34 & 3) == 0) {
          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);
        }
        break;
      case 0x3e:
        bVar48 = false;
LAB_002c6d53:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;
        uVar16 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar36 * 8;
          uVar45 = uVar19 & 0x1ffff8;
          uVar16 = uVar45 - 0x200000;
          if ((uVar19 & 0x100000) == 0) {
            uVar16 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar45 = iVar38 - (param_11 & 0xfffffff8);
        uVar19 = uVar45 >> 3;
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar36 = uVar36 ^ uVar19;
        *(uint *)param_10 =
             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);
        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar34 = uVar34 & 7;
joined_r0x002c6ec7:
        uVar16 = 3;
        if (uVar34 == 0) {
          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);
        }
        break;
      case 0x3f:
        bVar48 = false;
LAB_002c6e24:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;
        uVar16 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar36 * 4;
          uVar45 = uVar19 & 0x1ffffc;
          uVar16 = uVar45 - 0x200000;
          if ((uVar19 & 0x100000) == 0) {
            uVar16 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar45 = iVar38 - param_11;
        uVar19 = uVar45 >> 2;
        if (!bVar49 || !bVar50) {
          uVar36 = uVar36 ^ uVar19;
          *(uint *)param_10 =
               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);
          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);
          uVar34 = uVar34 & 3;
          goto joined_r0x002c6ec7;
        }
        goto LAB_002c59a8;
      case 0x40:
        bVar48 = false;
switchD_002c5379_caseD_40:
        if (param_3 == 4) {
          uVar17 = (uint)*param_10;
          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
          uVar16 = uVar36 << 0x10;
          if (bVar48 == false) {
            uVar16 = local_c8;
          }
          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;
          if ((bool)cVar13) goto LAB_002c59a8;
          uVar19 = uVar19 ^ uVar36;
          uVar16 = 0;
          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;
        }
        else {
          if (param_3 != 9) {
                    /* WARNING: Subroutine does not return */
            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");
          }
          lVar30 = FUN_0049cb70(0x40);
          *(undefined1 *)(lVar30 + 0x3c) = 0;
          uVar16 = 0;
          *(undefined4 *)(lVar30 + 0x2c) = 0;
          *(ulong **)(lVar30 + 0x10) = param_10;
          *(long **)(lVar30 + 0x18) = plVar3;
          *(uint **)(lVar30 + 0x20) = param_9;
          *(uint *)(lVar30 + 0x28) = local_c8;
          *(uint *)(lVar30 + 0x30) = uVar7;
          *(bool *)(lVar30 + 0x34) = bVar48;
          *(uint *)(lVar30 + 0x38) = param_11;
          FUN_004a11e0(lVar30,&DAT_0067db00);
          _DAT_0067db10 = _DAT_0067db10 + 1;
        }
        break;
      case 0x41:
        bVar48 = false;
LAB_002c6ccf:
        uVar17 = (uint)*param_10;
        uVar16 = (uVar17 & 0xff0000) >> 8;
        uVar36 = uVar17 >> 0x18 | uVar16;
        uVar19 = local_c8;
        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {
          uVar19 = uVar36;
        }
        if ((param_3 == 9) &&
           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {
          do {
            if (uVar7 == *(uint *)(local_98 + 6)) {
              puVar6 = (uint *)local_98[2];
              iVar38 = *(int *)(local_98 + 5);
              uVar16 = *puVar6;
              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;
              if (*(char *)((long)local_98 + 0x34) != '\0') {
                iVar38 = uVar19 + uVar45 * 0x10000;
              }
              iVar20 = *(int *)(local_98 + 7);
              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);
              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;
              if (bVar49 && bVar50) {
                *(uint *)param_1 = uVar32;
              }
              else {
                uVar32 = uVar32 ^ uVar45;
                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;
              }
              puVar40 = (undefined8 *)*local_98;
              _DAT_0067db10 = _DAT_0067db10 + -1;
              FUN_004a1200(local_98);
              FUN_0049e340(local_98);
              local_98 = puVar40;
            }
            else {
              local_98 = (undefined8 *)*local_98;
            }
          } while ((undefined8 **)local_98 != &DAT_0067db00);
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);
        uVar19 = iVar38 - param_11;
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar16 = 0;
        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17
        ;
        break;
      case 0x8b:
        bVar48 = false;
LAB_002c6bb8:
        uVar34 = *param_10;
        uVar17 = (uint)uVar34 >> 0x18;
        uVar36 = local_c8;
        if (bVar48 != false) {
          uVar16 = uVar17 * 2;
          uVar19 = uVar16 & 0xff;
          uVar36 = uVar19 - 0x100;
          if ((uVar16 & 0x80) == 0) {
            uVar36 = uVar19;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);
        uVar19 = iVar38 - param_11 >> 1;
        if ((bool)cVar13) {
LAB_002c78e8:
          uVar16 = 0;
          *(uint *)param_1 = uVar19;
        }
        else {
          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;
          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);
        }
        break;
      case 0x8c:
        bVar48 = false;
LAB_002c6c3e:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar16 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar36 * 2;
          uVar45 = uVar19 & 0x7fe;
          uVar16 = uVar45 - 0x800;
          if ((uVar19 & 0x400) == 0) {
            uVar16 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 - param_11 >> 1;
        if ((bool)cVar13) goto LAB_002c78e8;
        uVar19 = uVar19 ^ uVar36;
        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);
        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);
        break;
      case 0x8d:
        bVar48 = false;
LAB_002c69c5:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;
        uVar16 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar36 * 2;
          uVar45 = uVar19 & 0x1fffe;
          uVar16 = uVar45 - 0x20000;
          if ((uVar19 & 0x10000) == 0) {
            uVar16 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 - param_11 >> 1;
        if ((bool)cVar13) goto LAB_002c78e8;
        uVar19 = uVar19 ^ uVar36;
        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);
        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);
        break;
      case 0xf8:
        bVar48 = false;
        uVar17 = local_c8;
LAB_002c6ed9:
        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);
        uVar19 = iVar38 - param_11;
        if (!bVar49 || !bVar50) goto LAB_002c5ccb;
        goto LAB_002c59a8;
      }
LAB_002c5940:
      puVar44 = puVar44 + 1;
      if ((uint *)&local_78 == puVar44) {
LAB_002c5380:
        uVar17 = uVar47 - 0x85;
        if (local_f4 < 0xd) {
          uVar36 = (uint)*param_10;
          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;
          uVar45 = (uVar36 & 0xff00) << 8;
          uVar32 = uVar36 << 0x18;
          uVar31 = uVar19 | uVar45 | uVar32;
          uVar29 = (ushort)(uVar31 >> 0x10);
          uVar15 = (ushort)(uVar32 >> 0x10);
          if (uVar17 < 0x29) {
            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {
LAB_002c5754:
              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |
                       (ushort)((uVar36 & 0xff0000) >> 0x13);
              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;
            }
          }
          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {
            if (uVar47 != 100) goto LAB_002c5754;
            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;
          }
LAB_002c5471:
          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;
          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;
        }
        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&
                (1 < uVar47 - 0x8b)) {
          uVar17 = (uint)*param_10;
          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |
                   uVar17 << 0x18;
          uVar29 = (ushort)(uVar31 >> 0x10);
          goto LAB_002c5471;
        }
        if (uVar16 == 1) {
          if (param_8 == (undefined8 *)0x0) {
            lVar30 = plVar3[1];
            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");
            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);
          }
          else {
            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {
              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {
                bVar52 = FUN_00443190();
                bVar52 = bVar52 ^ 1;
              }
              else {
                bVar52 = *(int *)(param_8 + 3) != 0;
              }
            }
            else {
              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;
            }
            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {
              FUN_004443d0(local_58,param_8);
              puVar8 = local_58[0];
              uVar21 = gettext("relocation overflow: %u against \'%s\'");
                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */
              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);
              if (local_58[0] == auStack_48) goto LAB_002c53ec;
            }
            else {
              uVar21 = *(undefined8 *)(param_8[2] + 8);
              FUN_004443d0(local_58,param_8);
              puVar8 = local_58[0];
              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");
                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */
              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);
              if (local_58[0] == auStack_48) goto LAB_002c53ec;
            }
            FUN_0049e340();
          }
        }
        else if (uVar16 != 0) {
          if (uVar16 == 2) {
            pcVar42 = "unexpected opcode while processing relocation";
          }
          else {
            if (uVar16 != 3) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");
            }
            pcVar42 = "unaligned PC-relative relocation";
          }
          uVar21 = gettext(pcVar42);
          FUN_0034aed0(param_2,param_6,uVar35,uVar21);
        }
LAB_002c53ec:
        FUN_001a5bc0(&local_78);
        return 1;
      }
      uVar17 = *puVar44;
      goto LAB_002c4f1d;
    }
    FUN_00290a30();
    goto LAB_002c8217;
  }
  goto LAB_002c52f0;
LAB_002c82c4:
  FUN_00293370();
LAB_002c82c9:
  uVar36 = (uint)uVar34;
  if ((char)puVar44 == '\0') {
LAB_002c5869:
    lVar30 = param_8[0x10];
LAB_002c5870:
    local_d0 = (uint *)&local_78;
    local_68 = FUN_00298450(lVar30,lVar30 + 8);
    param_9 = local_d0;
    bVar48 = true;
    local_e1 = true;
  }
  else {
LAB_002c4d83:
    uVar36 = (uint)uVar34;
    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;
    bVar48 = true;
LAB_002c4d98:
    local_d0 = (uint *)&local_78;
    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&
       (*(int *)(param_8 + 0xd) != -1)) {
      lVar30 = *(long *)(param_4 + 0x30);
      if (lVar30 == 0) goto LAB_002c833d;
      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {
        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +
                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);
        if (*(char *)(param_4 + 0x14) != '\0') {
          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;
          param_9 = local_d0;
          puVar44 = (uint *)(ulong)bVar49;
          uVar17 = (uint)!bVar49;
          goto LAB_002c4e20;
        }
LAB_002c83ab:
        FUN_00290d80();
      }
                    /* WARNING: Subroutine does not return */
      FUN_00291e90();
    }
  }
LAB_002c4e20:
  local_98._0_1_ = (byte)uVar17;
  bVar49 = (bool)((byte)local_98 & bVar48);
  goto joined_r0x002c52d3;
switchD_002c4f87_caseD_9:
  bVar48 = false;
switchD_002c5379_caseD_9:
  if (param_8 == (undefined8 *)0x0) {
    if (param_3 == 4) {
      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);
    }
    else {
      if (param_3 != 9) {
LAB_002c8373:
                    /* WARNING: Subroutine does not return */
        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");
      }
      lVar30 = FUN_0049cb70(0x40);
      *(undefined1 *)(lVar30 + 0x3c) = 0;
      uVar16 = 0;
      *(undefined4 *)(lVar30 + 0x38) = 0;
      *(ulong **)(lVar30 + 0x10) = param_10;
      *(long **)(lVar30 + 0x18) = plVar3;
      *(uint **)(lVar30 + 0x20) = param_9;
      *(uint *)(lVar30 + 0x28) = local_c8;
      *(uint *)(lVar30 + 0x2c) = uVar17;
      *(uint *)(lVar30 + 0x30) = uVar7;
      *(bool *)(lVar30 + 0x34) = bVar48;
      FUN_004a11e0(lVar30,&DAT_0067db20);
      _DAT_0067db30 = _DAT_0067db30 + 1;
    }
    goto LAB_002c624f;
  }
  if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8333;
  puVar40 = param_8;
  local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);
  local_98._0_1_ = (byte)puVar40;
  lVar30 = *(long *)(param_4 + 0x20);
  if (lVar30 != 0) goto LAB_002c6206;
  FUN_00290a70();
LAB_002c6490:
  uVar17 = (uint)(byte)local_98;
LAB_002c64ab:
  local_d0 = (uint *)&local_78;
  local_68 = FUN_00298450();
  bVar49 = uVar47 == 100;
  puVar44 = (uint *)0x0;
  if ((uVar36 & 0xf7) == 0x85) goto LAB_002c7a61;
  local_e1 = true;
  bVar48 = bVar49;
LAB_002c64da:
  local_d0 = (uint *)&local_78;
  puVar44 = (uint *)0x0;
  param_9 = local_d0;
  goto LAB_002c4e43;
LAB_002c7a61:
  param_9 = local_d0;
  local_e1 = true;
  goto LAB_002c4e56;
}


PUSH RBP
MOV RAX,RSI
MOV RBP,RSP
PUSH R15
PUSH R14
PUSH R13
PUSH R12
PUSH RBX
SUB RSP,0x118
MOV qword ptr [RBP + -0x98],RDI
MOV EDI,EDX
MOV R15,qword ptr [RBP + 0x18]
MOV dword ptr [RBP + -0xe8],EDX
MOV RDX,qword ptr [RAX + 0x20]
MOV qword ptr [RBP + -0xd8],RSI
MOV RSI,qword ptr [RBP + 0x10]
MOV EAX,dword ptr [RDX + 0x14]
MOV qword ptr [RBP + -0xa0],RCX
MOV ECX,dword ptr [RDX + 0x24]
XOR EDX,EDX
MOV qword ptr [RBP + -0x108],R8
BSWAP EAX
MOV qword ptr [RBP + -0xf8],R9
BSWAP ECX
DIV ECX
MOV EDX,dword ptr [RSI]
MOV EBX,EDX
LEA RDX,[R9 + 0x1]
BSWAP EBX
MOV dword ptr [RBP + -0xa4],EBX
MOV EBX,dword ptr [RSI + 0x4]
BSWAP EBX
MOV ECX,EBX
MOVZX R14D,BL
SHR ECX,0x8
MOV dword ptr [RBP + -0xe4],ECX
CMP EDI,0x4
JZ 0x002c5618
CMP RAX,RDX
JA 0x002c4f90
MOV dword ptr [RBP + -0xbc],0x0
MOV dword ptr [RBP + -0xa8],0xffffffff
MOV dword ptr [RBP + -0xc0],0x0
MOV RAX,qword ptr [RBP + -0xd8]
MOV dword ptr [RBP + -0x68],0x80000000
MOV dword ptr [RBP + -0x60],0x0
MOV RAX,qword ptr [RAX + 0x10]
MOV qword ptr [RBP + -0x88],RAX
MOV RAX,-0x100000000
MOV qword ptr [RBP + -0x70],RAX
TEST R15,R15
JZ 0x002c6590
MOVZX EAX,byte ptr [R15 + 0x39]
SHR AL,0x2
MOV EDX,EAX
AND EDX,0x3c
CMP DL,0x3c
SETZ R12B
AND EAX,0x30
CMP AL,0x20
SETZ byte ptr [RBP + -0x90]
MOVZX EAX,byte ptr [RBP + -0x90]
OR AL,R12B
MOV byte ptr [RBP + -0xd9],AL
JNZ 0x002c5010
LEA RAX,[RBP + -0x70]
MOV byte ptr [RBP + -0xd9],0x0
MOV qword ptr [RBP + -0xc8],RAX
LEA EAX,[R14 + -0x1]
XOR ESI,ESI
CMP EAX,0xf8
JA 0x002c4c47
LEA RDX,[0x55e3e0]
MOVSX ESI,byte ptr [RDX + RAX*0x1]
MOV RDI,R15
CALL 0x00228fa0
MOVZX EDX,byte ptr [R15 + 0x65]
TEST AL,AL
JNZ 0x002c4fc0
TEST DL,DL
JZ 0x002c4c96
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDX,qword ptr [RAX + 0xb8]
TEST RDX,RDX
JZ 0x002c81e6
TEST byte ptr [RDX + 0x20],0x1
JZ 0x002c81c4
MOV EAX,dword ptr [R15 + 0x54]
ADD EAX,dword ptr [RDX + 0x8]
MOV dword ptr [RBP + -0x60],EAX
MOV RAX,qword ptr [RBP + -0xc8]
MOV qword ptr [RBP + 0x20],RAX
MOV RAX,qword ptr [R15]
MOV ECX,0x9
LEA RDI,[0x55842d]
MOV RSI,RAX
CMPSB.REPE RDI,RSI
MOV RSI,RAX
MOV ECX,0xf
LEA RDI,[0x55841e]
SETA DL
SBB DL,0x0
CMPSB.REPE RDI,RSI
SETA AL
SBB AL,0x0
MOVSX EAX,AL
TEST DL,DL
JNZ 0x002c5070
MOV RSI,qword ptr [RBP + -0x88]
MOVZX ESI,byte ptr [RSI + 0x36c]
MOV EDX,ESI
MOV byte ptr [RBP + -0xb0],SIL
SHR DL,0x1
AND EDX,0x1
XOR EDX,0x1
TEST EAX,EAX
JZ 0x002c51d0
TEST DL,DL
JZ 0x002c5078
LEA EAX,[R14 + -0x68]
CMP EAX,0x1
JBE 0x002c4d51
LEA EAX,[R14 + -0x5]
CMP EAX,0x1
JBE 0x002c4d51
LEA EAX,[R14 + -0x86]
CMP EAX,0x1
JBE 0x002c4d51
LEA EAX,[R14 + -0x40]
CMP EAX,0x1
JBE 0x002c4d51
LEA RDI,[0x558b78]
CALL 0x00177320
MOV EDX,dword ptr [RBP + -0xa4]
MOV RSI,qword ptr [RBP + -0xf8]
MOV RDI,qword ptr [RBP + -0xd8]
MOV RCX,RAX
XOR EAX,EAX
CALL 0x0034aed0
MOV byte ptr [RBP + -0xf0],0x1
CMP R14D,0x64
JNZ 0x002c5089
MOV RDI,qword ptr [R15 + 0x78]
TEST RDI,RDI
JZ 0x002c5850
CMP dword ptr [R15 + 0x24],-0x1
JNZ 0x002c6890
TEST R12B,R12B
JZ 0x002c6890
MOV EDX,dword ptr [R15 + 0x4c]
CMP EDX,-0x1
JNZ 0x002c5256
MOV EAX,0x1
NOP dword ptr [RAX]
CMP dword ptr [R15 + 0x24],-0x1
JZ 0x002c4e20
MOV ECX,dword ptr [R15 + 0x6c]
CMP ECX,-0x1
JZ 0x002c4e20
CMP dword ptr [R15 + 0x68],-0x1
JZ 0x002c4e20
MOV RSI,qword ptr [RBP + -0xa0]
MOV RDX,qword ptr [RSI + 0x30]
TEST RDX,RDX
JZ 0x002c833d
TEST byte ptr [RDX + 0x20],0x1
JZ 0x002c83b0
MOV ESI,dword ptr [RDX + 0x68]
ADD ESI,dword ptr [RDX + 0x60]
LEA ECX,[RCX + RSI*0x1 + 0x1]
ADD ECX,dword ptr [RDX + 0x8]
MOV dword ptr [RBP + -0x60],ECX
MOV RCX,qword ptr [RBP + -0xa0]
CMP byte ptr [RCX + 0x14],0x0
JZ 0x002c83ab
MOV RSI,qword ptr [RBP + -0xa0]
MOV ECX,dword ptr [RSI + 0x10]
MOV dword ptr [RBP + -0x90],ECX
MOV EDX,ECX
MOV RCX,qword ptr [RBP + -0xc8]
AND EDX,0x2000000
MOV qword ptr [RBP + 0x20],RCX
SETZ R12B
SETNZ byte ptr [RBP + -0x90]
MOVZX R13D,byte ptr [RBP + -0x90]
AND R13B,AL
JNZ 0x002c52e0
AND EBX,0xf7
CMP EBX,0x85
JZ 0x002c5320
LEA EDX,[R14 + -0x8b]
MOV R13D,EAX
CMP EDX,0x1
JBE 0x002c5320
TEST R15,R15
JNZ 0x002c5150
MOV EAX,R12D
XOR EAX,0x1
AND AL,R13B
MOV byte ptr [RBP + -0xda],AL
JZ 0x002c5670
MOVZX EAX,byte ptr [RBP + -0xda]
MOV byte ptr [RBP + -0xdb],AL
CMP dword ptr [RBP + -0xe8],0x9
LEA EAX,[R14 + -0x64]
MOV dword ptr [RBP + -0x7c],R14D
LEA EDX,[R14 + -0x85]
SETZ byte ptr [RBP + -0xb0]
MOV qword ptr [RBP + -0x78],0x0
MOV dword ptr [RBP + -0xec],EAX
CMP EAX,0xc
JA 0x002c55ef
MOV RAX,qword ptr [RBP + 0x28]
MOV RBX,qword ptr [RBP + 0x28]
MOVZX EAX,word ptr [RAX]
MOVZX ECX,word ptr [RBX + 0x2]
ROL AX,0x8
ROL CX,0x8
CMP EDX,0x28
JBE 0x002c56f0
CMP R14D,0x64
JNZ 0x002c5704
MOV dword ptr [RBP + -0xec],0x0
SHL EAX,0x10
MOVZX ECX,CX
OR EAX,ECX
MOV RBX,qword ptr [RBP + 0x28]
BSWAP EAX
MOV dword ptr [RBX],EAX
LEA R12,[RBP + -0x7c]
MOV dword ptr [RBP + -0x90],R14D
XOR R13D,R13D
MOV dword ptr [RBP + -0xe0],0x0
LEA RAX,[R12 + 0xc]
MOV qword ptr [RBP + -0xd0],RAX
MOV EDI,dword ptr [RBP + -0x90]
TEST EDI,EDI
JZ 0x002c5380
MOV R8D,dword ptr [RBP + -0xbc]
MOV EBX,dword ptr [RBP + -0xa4]
CMP dword ptr [RBP + -0xa8],EBX
SETZ BL
TEST R8D,R8D
SETNZ AL
AND EBX,EAX
MOV RAX,qword ptr [RBP + -0x98]
CMP byte ptr [RAX + 0x4],0x0
JZ 0x002c5350
MOV ESI,dword ptr [RAX]
MOV byte ptr [RAX + 0x4],BL
MOV dword ptr [RBP + -0xc0],ESI
MOV dword ptr [RBP + -0xb8],ESI
CMP EDI,0xf9
JA 0x002c64ea
LEA RCX,[0x55dc08]
MOV EDX,EDI
MOVSXD RAX,dword ptr [RCX + RDX*0x4]
ADD RAX,RCX
JMP RAX
MOV dword ptr [RBP + -0xc0],0x0
MOV EAX,dword ptr [RSI + 0x8]
BSWAP EAX
MOV dword ptr [RBP + -0xa8],EAX
MOV EAX,dword ptr [RSI + 0xc]
BSWAP EAX
MOVZX EAX,AL
MOV dword ptr [RBP + -0xbc],EAX
JMP 0x002c4bb0
TEST DL,DL
JNZ 0x002c4c60
MOV RSI,qword ptr [RBP + -0xa0]
MOV EAX,dword ptr [R15 + 0x68]
MOV RDX,qword ptr [RSI + 0x30]
CMP EAX,-0x1
JZ 0x002c67c0
TEST RDX,RDX
JZ 0x002c81eb
TEST byte ptr [RDX + 0x20],0x1
JZ 0x002c81bf
ADD EAX,dword ptr [RDX + 0x8]
XOR R12D,R12D
ADD EAX,dword ptr [RDX + 0x68]
MOV byte ptr [RBP + -0x90],0x0
JMP 0x002c4c88
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
LEA RAX,[RBP + -0x70]
XOR EDX,EDX
MOV qword ptr [RBP + -0xc8],RAX
CALL 0x001d7270
TEST EAX,EAX
JZ 0x002c4c1d
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
LEA RAX,[RBP + -0x70]
XOR EDX,EDX
MOV qword ptr [RBP + -0xc8],RAX
CALL 0x001d7270
OR EAX,0x1
MOV dword ptr [RBP + -0x60],EAX
LEA RAX,[RBP + -0x70]
MOV qword ptr [RBP + -0xc8],RAX
MOV qword ptr [RBP + 0x20],RAX
JMP 0x002c4c2f
TEST EAX,EAX
JZ 0x002c51e0
MOV byte ptr [RBP + -0xf0],0x0
CMP R14D,0x64
JZ 0x002c4d62
CMP qword ptr [R15 + 0x70],0x0
JZ 0x002c5249
CMP R14D,0x67
JZ 0x002c6788
MOV RAX,qword ptr [RBP + -0xd8]
MOV RDI,qword ptr [RBP + -0x88]
MOV R13D,dword ptr [RAX + 0x30]
MOV ESI,R13D
CALL 0x00297400
TEST AL,AL
JNZ 0x002c5240
MOV RAX,qword ptr [RBP + -0x88]
CMP R13D,dword ptr [RAX + 0x3f0]
JZ 0x002c5240
TEST R15,R15
JZ 0x002c797c
CMP byte ptr [R15 + 0x48],0x0
JZ 0x002c82a2
MOV EAX,dword ptr [R15 + 0x4c]
CMP EAX,-0x1
JZ 0x002c7f08
MOV RCX,qword ptr [RBP + -0xa0]
MOV RDX,qword ptr [RCX + 0x98]
TEST RDX,RDX
JZ 0x002c82bf
MOVZX ESI,byte ptr [RDX + 0x20]
AND ESI,0x1
MOV byte ptr [RBP + -0xd9],SIL
JZ 0x002c82ba
ADD EAX,dword ptr [RDX + 0x8]
CMP R14D,0x64
MOV dword ptr [RBP + -0x60],EAX
SETZ AL
AND EBX,0xf7
XOR R12D,R12D
CMP EBX,0x85
JNZ 0x002c64da
MOV R13D,EAX
MOV RAX,qword ptr [RBP + -0xc8]
MOV qword ptr [RBP + 0x20],RAX
MOV RDI,R15
CALL 0x002e7200
TEST AL,AL
JNZ 0x002c5660
MOV EAX,R12D
XOR EAX,0x1
AND AL,R13B
MOV byte ptr [RBP + -0xdb],AL
JZ 0x002c5788
MOV R9D,dword ptr [R15 + 0x20]
XOR ESI,ESI
TEST R9D,R9D
SETNZ SIL
CMP byte ptr [R15 + 0x64],0x0
JZ 0x002c5540
MOV EDX,0x1
MOV RDI,R15
CALL 0x0028d190
MOV byte ptr [RBP + -0xda],AL
TEST AL,AL
JNZ 0x002c4e81
CMP R14D,0x92
SETZ AL
CMP R14D,0x14
SETZ R13B
OR AL,R13B
MOV byte ptr [RBP + -0xda],AL
JNZ 0x002c5579
JMP 0x002c4e81
TEST DL,DL
JNZ 0x002c4d00
NOP dword ptr [RAX + RAX*0x1]
MOV RSI,qword ptr [RBP + -0xa0]
MOV RAX,qword ptr [RSI + 0x28]
TEST RAX,RAX
JZ 0x002c7900
MOV RDX,qword ptr [RSI + 0x20]
MOV EAX,dword ptr [RAX + 0x40]
TEST RDX,RDX
JZ 0x002c5223
CMP qword ptr [RDX + 0xd0],0x0
JZ 0x002c5223
MOV RSI,qword ptr [RBP + -0x88]
MOV RDX,qword ptr [RSI + 0x370]
TEST RDX,RDX
JZ 0x002c5223
ADD EAX,dword ptr [RDX + 0x10c]
MOV dword ptr [RBP + -0x60],EAX
MOV RAX,qword ptr [RBP + -0xc8]
MOV qword ptr [RBP + 0x20],RAX
JMP 0x002c5078
TEST R15,R15
JZ 0x002c56df
MOV EDX,dword ptr [R15 + 0x4c]
CMP EDX,-0x1
JZ 0x002c52f0
MOV RAX,qword ptr [RBP + -0x88]
TEST byte ptr [RAX + 0x36c],0x1
JNZ 0x002c52f0
MOVZX ESI,R12B
MOV EDI,R14D
CALL 0x00290610
TEST AL,AL
JZ 0x002c52f0
MOV RAX,qword ptr [RBP + -0xa0]
MOV RAX,qword ptr [RAX + 0x98]
TEST RAX,RAX
JZ 0x002c8212
TEST byte ptr [RAX + 0x20],0x1
JZ 0x002c820d
ADD EDX,dword ptr [RAX + 0x8]
MOVZX EAX,byte ptr [R15 + 0x39]
MOV RSI,qword ptr [RBP + -0xc8]
MOVZX R13D,byte ptr [RBP + -0x90]
SHR AL,0x2
AND EAX,0x30
MOV qword ptr [RBP + 0x20],RSI
CMP AL,0x20
SETZ AL
MOVZX EAX,AL
ADD EDX,EAX
CMP R14D,0x64
SETZ AL
MOV dword ptr [RBP + -0x60],EDX
AND R13B,AL
JZ 0x002c4e31
NOP dword ptr [RAX]
MOV byte ptr [RBP + -0x90],R13B
JMP 0x002c532c
CMP R14D,0x64
SETZ AL
CMP R14D,0x85
SETZ DL
OR DL,AL
JNZ 0x002c4d98
AND EBX,0xf7
XOR EAX,EAX
CMP EBX,0x85
JNZ 0x002c4e43
NOP dword ptr [RAX]
MOV R13D,EAX
TEST R12B,R12B
JZ 0x002c4e56
LEA RDI,[0x558980]
CALL 0x00177320
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0034a750
JMP 0x002c4e56
MOV RAX,qword ptr [RBP + -0x98]
MOV byte ptr [RAX + 0x4],BL
MOV EAX,dword ptr [RBP + -0x90]
CMP EAX,0xf9
JA 0x002c64f1
LEA RCX,[0x55dff0]
MOVSXD RAX,dword ptr [RCX + RAX*0x4]
ADD RAX,RCX
JMP RAX
CMP dword ptr [RBP + -0xec],0xc
LEA ECX,[R14 + -0x85]
JBE 0x002c5428
CMP ECX,0x28
JA 0x002c53ad
MOV RAX,0x1b3e1fff3ff
BT RAX,RCX
JC 0x002c57b8
CMP R13D,0x1
JZ 0x002c548e
TEST R13D,R13D
JZ 0x002c53ec
CMP R13D,0x2
JNZ 0x002c5410
LEA RDI,[0x558b20]
CALL 0x00177320
MOV EDX,dword ptr [RBP + -0xa4]
MOV RSI,qword ptr [RBP + -0xf8]
MOV RDI,qword ptr [RBP + -0xd8]
MOV RCX,RAX
XOR EAX,EAX
CALL 0x0034aed0
MOV RDI,qword ptr [RBP + -0xc8]
CALL 0x001a5bc0
LEA RSP,[RBP + -0x28]
MOV EAX,0x1
POP RBX
POP R12
POP R13
POP R14
POP R15
POP RBP
RET
CMP R13D,0x3
JNZ 0x002c8185
LEA RDI,[0x558b50]
JMP 0x002c53c9
MOV RAX,qword ptr [RBP + 0x28]
MOV EAX,dword ptr [RAX]
BSWAP EAX
MOV EDI,EAX
MOV ESI,EAX
SHR EDI,0x10
MOV EDX,EDI
CMP ECX,0x28
JBE 0x002c5740
CMP R14D,0x64
SETZ R8B
CMP R14D,0x85
SETZ CL
OR ECX,R8D
CMP R14D,0x4
SETZ R9B
OR CL,R9B
JNZ 0x002c6950
TEST R8B,R8B
JZ 0x002c6950
MOV RAX,qword ptr [RBP + 0x28]
ROL SI,0x8
ROL DX,0x8
MOV word ptr [RAX + 0x2],SI
MOV word ptr [RAX],DX
CMP R13D,0x1
JNZ 0x002c53b7
TEST R15,R15
JZ 0x002c7920
MOVZX EAX,byte ptr [R15 + 0x3a]
AND EAX,0x7
JNZ 0x002c58a0
MOV EDI,dword ptr [R15 + 0x18]
TEST byte ptr [R15 + 0x3b],0x20
JZ 0x002c7910
TEST EDI,EDI
SETNZ AL
TEST AL,AL
JZ 0x002c66f0
TEST byte ptr [R15 + 0x3a],0x7
JNZ 0x002c66f0
MOV RAX,qword ptr [R15 + 0x10]
LEA RBX,[RBP + -0x50]
MOV RSI,R15
MOV RDI,RBX
MOV R13,qword ptr [RAX + 0x8]
CALL 0x004443d0
LEA RDI,[0x558ac0]
MOV R12,qword ptr [RBP + -0x50]
CALL 0x00177320
SUB RSP,0x8
MOV R8D,R14D
MOV EDX,dword ptr [RBP + -0xa4]
PUSH R13
MOV RSI,qword ptr [RBP + -0xf8]
MOV RCX,RAX
MOV R9,R12
MOV RDI,qword ptr [RBP + -0xd8]
XOR EAX,EAX
CALL 0x0034aed0
MOV RDI,qword ptr [RBP + -0x50]
ADD RBX,0x10
POP RAX
POP RDX
CMP RDI,RBX
JZ 0x002c53ec
CALL 0x0049e340
JMP 0x002c53ec
XOR EDX,EDX
MOV RDI,R15
CALL 0x0028d190
MOV byte ptr [RBP + -0xda],AL
TEST AL,AL
JNZ 0x002c4e81
CMP R14D,0x14
SETZ AL
CMP R14D,0x92
SETZ R13B
OR AL,R13B
MOV byte ptr [RBP + -0xda],AL
JZ 0x002c4e81
LEA ECX,[R14 + -0x85]
CMP ECX,0x28
JA 0x002c6750
MOV RDX,0x1b3e1fff3ff
MOV EAX,0x1
SHL RAX,CL
AND RAX,RDX
CMP RAX,0x1
SBB EDX,EDX
AND EDX,0xffffff82
ADD EDX,0xc
CMP RAX,0x1
SBB EBX,EBX
AND EBX,0xffffff82
ADD EBX,0x2d
CMP RAX,0x1
SBB R14D,R14D
MOV dword ptr [RBP + -0xec],EBX
AND R14D,0xffffff82
ADD R14D,0x91
MOV dword ptr [RBP + -0x7c],R14D
CMP dword ptr [RBP + -0xe8],0x9
MOV qword ptr [RBP + -0x78],0x0
MOV byte ptr [RBP + -0xda],0x0
SETZ byte ptr [RBP + -0xb0]
CMP EDX,0x28
JA 0x002c4ef9
MOV RAX,0x1b3e1fff3ff
BT RAX,RDX
JNC 0x002c4ef9
JMP 0x002c581a
MOV dword ptr [RBP + -0xbc],0x0
MOV ECX,dword ptr [RSI + 0x8]
MOV dword ptr [RBP + -0xa8],0xffffffff
BSWAP ECX
MOV dword ptr [RBP + -0xc0],ECX
CMP RAX,RDX
JBE 0x002c4bb0
MOV EAX,dword ptr [RSI + 0xc]
BSWAP EAX
MOV dword ptr [RBP + -0xa8],EAX
MOV EAX,dword ptr [RSI + 0x10]
BSWAP EAX
MOVZX EAX,AL
MOV dword ptr [RBP + -0xbc],EAX
JMP 0x002c4bb0
MOV byte ptr [RBP + -0xdb],0x0
JMP 0x002c5175
MOVZX EAX,byte ptr [RBP + -0x90]
XOR EAX,0x1
CMP R14D,0x85
SETZ R13B
AND AL,R13B
MOV byte ptr [RBP + -0xda],AL
JNZ 0x002c57e0
CMP R14D,0x4
MOVZX EBX,byte ptr [RBP + -0x90]
SETZ AL
CMP R14D,0x25
SETZ R13B
OR EBX,R12D
OR AL,R13B
CMOVZ EBX,EAX
MOV byte ptr [RBP + -0xdb],BL
TEST R15,R15
JNZ 0x002c5175
MOV byte ptr [RBP + -0xda],0x1
JMP 0x002c4e81
MOV R12D,0x1
NOP dword ptr [RAX]
MOV byte ptr [RBP + -0xf0],0x0
CMP R14D,0x64
SETZ AL
JMP 0x002c4e20
MOV RSI,0x1b3e1fff3ff
BT RSI,RDX
JC 0x002c4ee9
MOVZX ESI,AX
MOV EDI,ECX
AND AX,0x7e0
AND ECX,0x1f
MOV EDX,ESI
SHL EDI,0xb
OR EAX,ECX
SHL EDX,0x10
AND EDI,0x7ff0000
SHL ESI,0xb
MOVZX EAX,AX
AND EDX,0xf8000000
MOVZX ESI,SI
OR EDX,EDI
OR EDX,ESI
OR EAX,EDX
JMP 0x002c4ef1
MOV R8,0x1b3e1fff3ff
BT R8,RCX
JC 0x002c5471
MOV R8D,EAX
MOV EDX,EDI
MOV ECX,EAX
AND AX,0x7e0
SHR R8D,0xb
AND DX,0xf800
AND ECX,0x1f
MOV ESI,R8D
OR EDX,EAX
AND R8D,0x1f
AND ESI,0xffffffe0
OR EDX,R8D
OR ESI,ECX
JMP 0x002c5471
MOVZX EAX,byte ptr [RBP + -0x90]
XOR EAX,0x1
CMP R14D,0x85
SETZ R13B
AND AL,R13B
MOV byte ptr [RBP + -0xdb],AL
JNZ 0x002c5175
JMP 0x002c5694
LEA EAX,[R14 + -0x8b]
CMP EAX,0x1
JBE 0x002c53ad
MOV RAX,qword ptr [RBP + 0x28]
MOV EDX,dword ptr [RAX]
BSWAP EDX
MOV ESI,EDX
SHR EDX,0x10
JMP 0x002c5471
MOVZX EAX,byte ptr [RBP + -0xda]
MOV R14D,0x85
MOV qword ptr [RBP + -0x7c],0x85
MOV dword ptr [RBP + -0x74],0x0
CMP dword ptr [RBP + -0xe8],0x9
MOV byte ptr [RBP + -0xdb],AL
MOV dword ptr [RBP + -0xec],0x21
SETZ byte ptr [RBP + -0xb0]
LEA EAX,[R14 + -0x8b]
CMP EAX,0x1
JBE 0x002c4ef9
MOV RAX,qword ptr [RBP + 0x28]
MOV RBX,qword ptr [RBP + 0x28]
MOVZX EAX,word ptr [RAX]
MOVZX ECX,word ptr [RBX + 0x2]
ROL AX,0x8
ROL CX,0x8
JMP 0x002c4ee9
CMP qword ptr [R15 + 0x80],0x0
JZ 0x002c4d83
CMP dword ptr [R15 + 0x24],-0x1
JZ 0x002c82c9
MOV RDI,qword ptr [R15 + 0x80]
LEA RSI,[RDI + 0x8]
CALL 0x00298450
MOV RSI,qword ptr [RBP + -0xc8]
MOV dword ptr [RBP + -0x60],EAX
MOV EAX,0x1
MOV byte ptr [RBP + -0xd9],0x1
MOV qword ptr [RBP + 0x20],RSI
JMP 0x002c4e20
CMP AL,0x4
SETNZ AL
JMP 0x002c54b9
MOV byte ptr [RBP + -0xb0],0x0
CMP dword ptr [RBP + -0xe8],0x4
JZ 0x002c8011
CMP dword ptr [RBP + -0xe8],0x9
JNZ 0x002c830c
MOV EDI,0x40
CALL 0x0049cb70
MOV RBX,qword ptr [RBP + 0x28]
MOV byte ptr [RAX + 0x3c],0x0
MOV RDI,RAX
XOR R13D,R13D
MOV dword ptr [RAX + 0x2c],0x0
LEA RSI,[0x67db00]
MOV qword ptr [RAX + 0x10],RBX
MOV RBX,qword ptr [RBP + -0x88]
MOV qword ptr [RAX + 0x18],RBX
MOV RBX,qword ptr [RBP + 0x20]
MOV qword ptr [RAX + 0x20],RBX
MOV EBX,dword ptr [RBP + -0xc0]
MOV dword ptr [RAX + 0x28],EBX
MOV EBX,dword ptr [RBP + -0xe4]
MOV dword ptr [RAX + 0x30],EBX
MOVZX EBX,byte ptr [RBP + -0xb0]
MOV byte ptr [RAX + 0x34],BL
MOV EBX,dword ptr [RBP + 0x30]
MOV dword ptr [RAX + 0x38],EBX
CALL 0x004a11e0
ADD qword ptr [0x0067db10],0x1
NOP word ptr [RAX + RAX*0x1]
ADD R12,0x4
CMP qword ptr [RBP + -0xd0],R12
JZ 0x002c5380
MOV EAX,dword ptr [R12]
MOV dword ptr [RBP + -0x90],EAX
JMP 0x002c4f1d
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
MOV R13D,dword ptr [RAX]
MOV EAX,R13D
BSWAP EAX
MOV dword ptr [RBP + -0x90],EAX
MOVZX EAX,AX
CMOVZ EAX,dword ptr [RBP + -0xc0]
MOV EDX,EAX
CALL 0x001d7270
SUB EAX,0x7000
TEST BL,BL
JZ 0x002c5a18
NOP dword ptr [RAX]
MOV RBX,qword ptr [RBP + -0x98]
XOR R13D,R13D
MOV dword ptr [RBX],EAX
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV R13D,dword ptr [RAX]
MOV ESI,R13D
BSWAP ESI
MOV dword ptr [RBP + -0x90],ESI
JZ 0x002c59f0
MOVZX ECX,SI
AND ESI,0x8000
LEA EAX,[RCX + -0x10000]
CMOVZ EAX,ECX
MOV dword ptr [RBP + -0xb8],EAX
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
MOV EAX,EAX
MOV ECX,0x80008000
ADD RAX,RCX
SHR RAX,0x20
TEST BL,BL
JNZ 0x002c59a8
XOR EAX,dword ptr [RBP + -0x90]
MOVZX EAX,AX
BSWAP EAX
XOR R13D,EAX
MOV RAX,qword ptr [RBP + 0x28]
MOV dword ptr [RAX],R13D
XOR R13D,R13D
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
MOV R13D,dword ptr [RAX]
MOV EAX,R13D
BSWAP EAX
MOV dword ptr [RBP + -0x90],EAX
MOVZX EAX,AX
CMOVZ EAX,dword ptr [RBP + -0xc0]
MOV EDX,EAX
CALL 0x001d7270
ADD EAX,0x1000
SHR EAX,0x10
TEST BL,BL
JZ 0x002c5a18
JMP 0x002c59a8
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
MOV EAX,dword ptr [RAX]
BSWAP EAX
CMOVZ EAX,dword ptr [RBP + -0xc0]
MOV EDX,EAX
CALL 0x001d7270
SUB EAX,0x7000
TEST BL,BL
JNZ 0x002c59a8
MOV RBX,qword ptr [RBP + 0x28]
BSWAP EAX
XOR R13D,R13D
MOV dword ptr [RBX],EAX
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST R15,R15
JZ 0x002c789d
TEST RDI,RDI
JZ 0x002c8338
MOV RCX,qword ptr [RBP + -0x88]
MOV EDX,0x1
MOV RSI,R15
CALL 0x0029b910
MOV dword ptr [RBP + -0xe0],EAX
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST RDI,RDI
JNZ 0x002c5c62
CALL 0x00290a70
NOP dword ptr [RAX]
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
MOV R13D,dword ptr [RAX]
MOV EAX,R13D
BSWAP EAX
MOV dword ptr [RBP + -0x90],EAX
MOVZX EAX,AX
CMOVZ EAX,dword ptr [RBP + -0xc0]
MOV EDX,EAX
CALL 0x001d7270
SUB EAX,0x8000
TEST BL,BL
JZ 0x002c5a18
JMP 0x002c59a8
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
MOV R13D,dword ptr [RAX]
MOV EAX,R13D
BSWAP EAX
MOV dword ptr [RBP + -0x90],EAX
MOVZX EAX,AX
CMOVZ EAX,dword ptr [RBP + -0xc0]
MOV EDX,EAX
CALL 0x001d7270
JMP 0x002c5a76
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST RDI,RDI
JZ 0x002c835f
CMP qword ptr [RDI + 0xd0],0x0
JZ 0x002c7864
MOV RAX,qword ptr [RBP + -0x88]
MOV RAX,qword ptr [RAX + 0x370]
TEST RAX,RAX
JZ 0x002c828a
MOV EAX,dword ptr [RAX + 0x14]
MOV RDX,qword ptr [RBP + -0x88]
MOV ESI,EAX
MOV dword ptr [RBP + -0xe0],EAX
CALL 0x00292520
JMP 0x002c5c74
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST R15,R15
JZ 0x002c7779
TEST RDI,RDI
JZ 0x002c83a6
MOV RCX,qword ptr [RBP + -0x88]
MOV EDX,0x2
MOV RSI,R15
CALL 0x0029b910
MOV dword ptr [RBP + -0xe0],EAX
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST RDI,RDI
JZ 0x002c83a1
MOV RDX,qword ptr [RBP + -0x88]
MOV ESI,dword ptr [RBP + -0xe0]
CALL 0x00292520
MOV RBX,qword ptr [RBP + -0x98]
CMP byte ptr [RBX + 0x4],0x0
JZ 0x002c6098
MOV dword ptr [RBX],EAX
XOR R13D,R13D
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
MOV EAX,dword ptr [RAX]
BSWAP EAX
CMOVZ EAX,dword ptr [RBP + -0xc0]
MOV EDX,EAX
CALL 0x001d7270
SUB EAX,0x8000
TEST BL,BL
JNZ 0x002c59a8
BSWAP EAX
MOV RBX,qword ptr [RBP + 0x28]
JMP 0x002c5c85
MOV byte ptr [RBP + -0xb0],0x0
TEST R15,R15
JZ 0x002c5d0b
MOV EDI,dword ptr [R15 + 0x20]
XOR ESI,ESI
MOV EDX,0x1
TEST EDI,EDI
MOV RDI,R15
SETNZ SIL
CALL 0x0028d190
TEST AL,AL
JZ 0x002c5940
MOV RAX,qword ptr [RBP + -0x98]
MOVZX EBX,byte ptr [RAX + 0x4]
CMP byte ptr [RBP + -0xb0],0x0
MOV EAX,0x0
CMOVZ EAX,dword ptr [RBP + -0xc0]
CMP dword ptr [RBP + -0x90],0x25
MOV EDX,EAX
MOV RAX,qword ptr [RBP + 0x28]
MOV EAX,dword ptr [RAX]
BSWAP EAX
MOV R13D,EAX
JNZ 0x002c5d90
CMP byte ptr [RBP + -0xdb],0x1
JZ 0x002c5d90
CMP EAX,0x3200008
JZ 0x002c5d4b
CMP EAX,0x320f809
JNZ 0x002c5d90
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
SUB EAX,dword ptr [RBP + 0x30]
LEA EDX,[RAX + 0x1fffc]
CMP EDX,0x3ffff
JA 0x002c5d90
SUB EAX,0x4
SHR EAX,0x2
MOVZX EAX,AX
MOV EDX,EAX
OR EAX,0x4110000
OR EDX,0x10000000
CMP R13D,0x3200008
CMOVNZ EDX,EAX
MOV R13D,EDX
NOP
TEST BL,BL
JZ 0x002c7d3d
MOV RAX,qword ptr [RBP + -0x98]
MOV dword ptr [RAX],R13D
XOR R13D,R13D
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST R15,R15
JZ 0x002c7870
TEST RDI,RDI
JZ 0x002c8267
MOV RCX,qword ptr [RBP + -0x88]
XOR EDX,EDX
MOV RSI,R15
CALL 0x0029b910
MOV dword ptr [RBP + -0xe0],EAX
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST RDI,RDI
JZ 0x002c8262
MOV RDX,qword ptr [RBP + -0x88]
MOV ESI,dword ptr [RBP + -0xe0]
CALL 0x00292520
MOV RBX,qword ptr [RBP + -0x98]
CMP byte ptr [RBX + 0x4],0x0
JNZ 0x002c67b0
MOV RBX,qword ptr [RBP + 0x28]
XOR R13D,R13D
MOV ECX,dword ptr [RBX]
MOV EDX,ECX
BSWAP EDX
XOR EDX,EAX
MOVZX EAX,DX
BSWAP EAX
XOR EAX,ECX
MOV dword ptr [RBX],EAX
JMP 0x002c624f
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST R15,R15
JZ 0x002c7740
TEST RDI,RDI
JZ 0x002c8271
MOV RCX,qword ptr [RBP + -0x88]
XOR EDX,EDX
MOV RSI,R15
CALL 0x0029b910
MOV dword ptr [RBP + -0xe0],EAX
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST RDI,RDI
JZ 0x002c826c
MOV RDX,qword ptr [RBP + -0x88]
MOV ESI,dword ptr [RBP + -0xe0]
CALL 0x00292520
MOV RBX,qword ptr [RBP + -0x98]
ADD EAX,0x8000
SHR EAX,0x10
CMP byte ptr [RBX + 0x4],0x0
JNZ 0x002c67b0
MOV RBX,qword ptr [RBP + 0x28]
XOR R13D,R13D
MOV ECX,dword ptr [RBX]
MOV EDX,ECX
BSWAP EDX
XOR EAX,EDX
MOVZX EAX,AX
BSWAP EAX
XOR EAX,ECX
MOV dword ptr [RBX],EAX
JMP 0x002c624f
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV EAX,dword ptr [RAX]
MOV R13D,EAX
MOV dword ptr [RBP + -0x90],EAX
BSWAP R13D
MOVZX EAX,R13W
CMOVZ EAX,dword ptr [RBP + -0xc0]
CMP byte ptr [RBP + -0xda],0x0
MOV dword ptr [RBP + -0xb8],EAX
JNZ 0x002c76b5
TEST BL,BL
JNZ 0x002c769e
MOV EBX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + 0x28]
XOR R13D,EBX
MOVZX EAX,R13W
XOR R13D,R13D
BSWAP EAX
XOR EAX,dword ptr [RBP + -0x90]
MOV dword ptr [RSI],EAX
LEA EAX,[RBX + 0x8000]
CMP EAX,0xffff
SETA R13B
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
MOV EAX,dword ptr [RAX]
MOV R13D,EAX
MOV dword ptr [RBP + -0x90],EAX
BSWAP R13D
MOVZX EAX,R13W
CMOVZ EAX,dword ptr [RBP + -0xc0]
MOV EDX,EAX
CALL 0x001d7270
LEA ESI,[RAX + 0x8000]
MOV RAX,qword ptr [RBP + -0xa0]
XOR SI,SI
MOV RDX,qword ptr [RAX + 0x20]
TEST RDX,RDX
JZ 0x002c819d
CMP qword ptr [RDX + 0xd0],0x0
JZ 0x002c776d
MOV RAX,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RAX + 0x370]
TEST RDI,RDI
JZ 0x002c8285
CALL 0x002c47d0
MOV RSI,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RSI + 0x20]
TEST RDI,RDI
JZ 0x002c8280
MOV RDX,qword ptr [RBP + -0x88]
MOV ESI,EAX
CALL 0x00292520
TEST BL,BL
JNZ 0x002c59a8
XOR R13D,EAX
MOV RBX,qword ptr [RBP + 0x28]
MOVZX EDX,R13W
BSWAP EDX
XOR EDX,dword ptr [RBP + -0x90]
JMP 0x002c60ab
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST R15,R15
JZ 0x002c7837
TEST RDI,RDI
JZ 0x002c827b
MOV RCX,qword ptr [RBP + -0x88]
XOR EDX,EDX
MOV RSI,R15
CALL 0x0029b910
MOV dword ptr [RBP + -0xe0],EAX
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST RDI,RDI
JZ 0x002c8276
MOV RDX,qword ptr [RBP + -0x88]
MOV ESI,dword ptr [RBP + -0xe0]
CALL 0x00292520
MOV RBX,qword ptr [RBP + -0x98]
CMP dword ptr [RBP + -0x90],0xf9
MOVZX EDX,byte ptr [RBX + 0x4]
JZ 0x002c7b8f
TEST DL,DL
JNZ 0x002c59a8
NOP word ptr [RAX + RAX*0x1]
MOV RBX,qword ptr [RBP + 0x28]
MOV ECX,dword ptr [RBX]
MOV EDX,ECX
BSWAP EDX
XOR EDX,EAX
MOVZX EDX,DX
BSWAP EDX
XOR EDX,ECX
ADD EAX,0x8000
XOR R13D,R13D
MOV dword ptr [RBX],EDX
CMP EAX,0xffff
SETA R13B
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RCX,qword ptr [RBP + -0xa0]
MOV RDX,qword ptr [RBP + -0x108]
MOV ESI,0x12
MOV RDI,R15
CALL 0x0029fc10
TEST AL,AL
JZ 0x002c5940
MOV RAX,qword ptr [RBP + -0x98]
CMP byte ptr [RBP + -0xb0],0x0
MOV EDX,dword ptr [RBP + -0xc0]
MOVZX EBX,byte ptr [RAX + 0x4]
JZ 0x002c6b22
MOV RAX,qword ptr [RBP + 0x28]
MOV RDX,qword ptr [RAX]
BSWAP RDX
JMP 0x002c6b22
MOV byte ptr [RBP + -0xb0],0x0
MOV RSI,qword ptr [RBP + -0xa0]
MOV RAX,qword ptr [RSI + 0x28]
TEST RAX,RAX
JZ 0x002c8076
MOV ECX,dword ptr [RAX + 0x40]
MOV RDX,qword ptr [RSI + 0x20]
MOV dword ptr [RBP + -0x90],ECX
TEST RDX,RDX
JZ 0x002c6172
CMP qword ptr [RDX + 0xd0],0x0
JZ 0x002c6172
MOV RAX,qword ptr [RBP + -0x88]
MOV RAX,qword ptr [RAX + 0x370]
TEST RAX,RAX
JZ 0x002c6172
MOV EAX,dword ptr [RAX + 0x10c]
ADD ECX,EAX
MOV dword ptr [RBP + -0x90],ECX
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV R13,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
MOV EAX,dword ptr [RAX]
MOV RSI,R13
BSWAP EAX
CMOVZ EAX,dword ptr [RBP + -0xc0]
MOV EDX,EAX
CALL 0x001d7270
ADD EAX,dword ptr [R13 + 0x368]
SUB EAX,dword ptr [RBP + -0x90]
TEST BL,BL
JZ 0x002c5ccb
JMP 0x002c59a8
MOV byte ptr [RBP + -0xb0],0x0
TEST R15,R15
JZ 0x002c82dc
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST RDI,RDI
JZ 0x002c82d7
MOV RCX,qword ptr [RBP + -0x88]
XOR EDX,EDX
MOV RSI,R15
CALL 0x0029b910
MOV dword ptr [RBP + -0xe0],EAX
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST RDI,RDI
JZ 0x002c81f0
MOV RDX,qword ptr [RBP + -0x88]
MOV ESI,dword ptr [RBP + -0xe0]
CALL 0x00292520
MOV RBX,qword ptr [RBP + -0x98]
CMP byte ptr [RBX + 0x4],0x0
JNZ 0x002c67b0
MOV RBX,qword ptr [RBP + 0x28]
XOR R13D,R13D
MOV ECX,dword ptr [RBX]
MOV EDX,ECX
BSWAP EDX
XOR EDX,EAX
ADD EAX,0x8000
MOVZX EDX,DX
BSWAP EDX
XOR EDX,ECX
CMP EAX,0xffff
MOV dword ptr [RBX],EDX
SETA R13B
CMP byte ptr [RBP + -0xd9],0x0
JZ 0x002c5940
MOV RAX,qword ptr [RBP + -0xa0]
MOV RBX,qword ptr [RAX + 0x20]
TEST RBX,RBX
JZ 0x002c638e
TEST R15,R15
JZ 0x002c6283
CMP byte ptr [R15 + 0x88],0x0
JNZ 0x002c6530
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
XOR EDX,EDX
CALL 0x001d7270
MOV EDX,dword ptr [RBP + -0xe0]
MOV RCX,qword ptr [RBX + 0xb8]
BSWAP EAX
MOV dword ptr [RCX + RDX*0x1],EAX
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RCX,qword ptr [RBP + -0xa0]
MOV RDX,qword ptr [RBP + -0x108]
MOV ESI,0x2
MOV RDI,R15
CALL 0x0029fc10
TEST AL,AL
JZ 0x002c6314
MOV RAX,qword ptr [RBP + -0x98]
CMP byte ptr [RBP + -0xb0],0x0
MOVZX EBX,byte ptr [RAX + 0x4]
JNZ 0x002c7efb
MOV EDX,dword ptr [RBP + -0xc0]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
TEST BL,BL
JZ 0x002c7eeb
MOV RBX,qword ptr [RBP + -0x98]
XOR R13D,R13D
MOV dword ptr [RBX],EAX
TEST R15,R15
JZ 0x002c5940
MOVZX EAX,byte ptr [R15 + 0x39]
SHR AL,0x2
MOV EDX,EAX
AND EDX,0x3c
CMP DL,0x3c
JZ 0x002c633a
AND EAX,0x30
CMP AL,0x20
JNZ 0x002c5940
CMP dword ptr [R15 + 0x5c],0x1
JNZ 0x002c5940
MOV RDI,qword ptr [R15 + 0x70]
TEST RDI,RDI
JZ 0x002c6370
CMP byte ptr [R15 + 0x48],0x0
JZ 0x002c82f4
LEA RSI,[RDI + 0x8]
CALL 0x00298450
MOV dword ptr [RBP + -0x60],EAX
MOV RAX,qword ptr [RBP + -0xc8]
MOV qword ptr [RBP + 0x20],RAX
MOV EAX,dword ptr [R15 + 0x60]
MOV dword ptr [RBP + -0xe0],EAX
MOV RAX,qword ptr [RBP + -0xa0]
MOV RBX,qword ptr [RAX + 0x20]
TEST RBX,RBX
JNZ 0x002c6275
CALL 0x00290a70
NOP dword ptr [RAX + RAX*0x1]
MOV byte ptr [RBP + -0xb0],0x0
CMP dword ptr [RBP + -0xe8],0x4
JZ 0x002c7fbb
CMP dword ptr [RBP + -0xe8],0x9
JNZ 0x002c81f5
MOV EDI,0x40
CALL 0x0049cb70
MOV RBX,qword ptr [RBP + 0x28]
LEA RSI,[0x67db40]
MOV RDI,RAX
XOR R13D,R13D
MOV qword ptr [RAX + 0x10],RBX
MOV RBX,qword ptr [RBP + -0x88]
MOV qword ptr [RAX + 0x18],RBX
MOV RBX,qword ptr [RBP + 0x20]
MOV qword ptr [RAX + 0x20],RBX
MOV EBX,dword ptr [RBP + -0xc0]
MOV dword ptr [RAX + 0x28],EBX
MOV EBX,dword ptr [RBP + -0x90]
MOV dword ptr [RAX + 0x2c],EBX
MOV EBX,dword ptr [RBP + -0xe4]
MOV dword ptr [RAX + 0x30],EBX
MOVZX EBX,byte ptr [RBP + -0xb0]
MOV byte ptr [RAX + 0x34],BL
MOV EBX,dword ptr [RBP + 0x30]
MOV dword ptr [RAX + 0x38],EBX
MOVZX EBX,byte ptr [RBP + -0xf0]
MOV byte ptr [RAX + 0x3c],BL
CALL 0x004a11e0
ADD qword ptr [0x0067db50],0x1
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
TEST R15,R15
JZ 0x002c77a9
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST RDI,RDI
JZ 0x002c8333
MOV RCX,qword ptr [RBP + -0x88]
XOR EDX,EDX
MOV RSI,R15
CALL 0x0029b910
MOV dword ptr [RBP + -0xe0],EAX
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RAX + 0x20]
TEST RDI,RDI
JNZ 0x002c6206
CALL 0x00290a70
NOP word ptr CS:[RAX + RAX*0x1]
MOV byte ptr [RBP + -0x90],SIL
CMP RDX,RAX
JZ 0x002c64ab
MOV ECX,dword ptr [RBP + -0xe4]
CMP dword ptr [RAX + 0x20],ECX
JA 0x002c64ab
MOV RDI,qword ptr [RAX + 0x28]
LEA RSI,[RDI + 0x8]
CALL 0x00298450
CMP R14D,0x64
MOV dword ptr [RBP + -0x60],EAX
SETZ AL
AND EBX,0xf7
XOR R12D,R12D
CMP EBX,0x85
JZ 0x002c7a61
MOV byte ptr [RBP + -0xd9],0x1
MOV RBX,qword ptr [RBP + -0xc8]
MOV qword ptr [RBP + 0x20],RBX
JMP 0x002c4e43
MOV byte ptr [RBP + -0xb0],0x0
LEA RDI,[0x53353d]
CALL 0x00177320
MOV EDX,dword ptr [RBP + -0xa4]
MOV R8D,dword ptr [RBP + -0x90]
MOV RSI,qword ptr [RBP + -0xf8]
MOV RDI,qword ptr [RBP + -0xd8]
MOV RCX,RAX
XOR EAX,EAX
CALL 0x0034aed0
JMP 0x002c5940
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
XOR EDX,EDX
CALL 0x001d7270
CMP dword ptr [R15 + 0x5c],0x2
JZ 0x002c8347
MOV RCX,qword ptr [RBX + 0xd0]
TEST RCX,RCX
JZ 0x002c6770
MOV EDX,dword ptr [RCX + 0x4]
ADD EDX,dword ptr [RCX]
LEA ECX,[RDX + 0x2]
MOV EDX,dword ptr [R15 + 0x20]
TEST EDX,EDX
JZ 0x002c8342
SUB EDX,dword ptr [RBX + 0xc0]
BSWAP EAX
ADD EDX,ECX
MOV RCX,qword ptr [RBX + 0xb8]
SHL EDX,0x5
SHR EDX,0x3
MOV dword ptr [RCX + RDX*0x1],EAX
JMP 0x002c5940
MOV RDI,qword ptr [RBP + -0x88]
MOV ESI,dword ptr [RBP + -0xe4]
MOV RAX,qword ptr [RDI + 0x238]
MOV RDX,qword ptr [RDI + 0x228]
MOV ECX,dword ptr [RDI + 0x240]
MOV qword ptr [RBP + -0x90],RAX
SUB RAX,RDX
LEA RAX,[RCX + RAX*0x8]
MOV ECX,dword ptr [RDI + 0x230]
SUB RAX,RCX
CMP RSI,RAX
JNC 0x002c823f
MOVZX ECX,byte ptr [RBP + -0xe4]
MOV R8,RSI
MOV EAX,0x1
MOV R10,qword ptr [RBP + -0x88]
SHR R8,0x6
SHL RAX,CL
MOV RDX,qword ptr [RDX + R8*0x8]
MOV RCX,qword ptr [R10 + 0x260]
MOV R13,RAX
MOV RDI,qword ptr [R10 + 0x250]
MOV R9D,dword ptr [R10 + 0x268]
AND R13,RDX
MOV qword ptr [RBP + -0x90],RCX
SETNZ R12B
SUB RCX,RDI
LEA RCX,[R9 + RCX*0x8]
MOV R9D,dword ptr [R10 + 0x258]
SUB RCX,R9
CMP RSI,RCX
JNC 0x002c821c
MOV RCX,qword ptr [RDI + R8*0x8]
TEST RAX,RCX
SETNZ byte ptr [RBP + -0x90]
OR RDX,RCX
TEST RDX,RAX
JNZ 0x002c6980
LEA RAX,[RBP + -0x70]
MOV byte ptr [RBP + -0xd9],0x0
MOV qword ptr [RBP + -0xc8],RAX
CMP R14D,0x64
JZ 0x002c6838
MOV RAX,qword ptr [RBP + -0x88]
LEA RCX,[RAX + 0x310]
MOV RAX,qword ptr [RAX + 0x318]
TEST RAX,RAX
JZ 0x002c56d8
MOVZX ESI,byte ptr [RBP + -0x90]
MOV RDX,RCX
MOV EDI,ESI
MOV ESI,dword ptr [RBP + -0xe4]
JMP 0x002c66ac
MOV RDX,RAX
MOV RAX,qword ptr [RAX + 0x10]
TEST RAX,RAX
JZ 0x002c66ba
CMP dword ptr [RAX + 0x20],ESI
JNC 0x002c66a0
MOV RAX,qword ptr [RAX + 0x18]
TEST RAX,RAX
JNZ 0x002c66ac
MOV byte ptr [RBP + -0x90],DIL
CMP RCX,RDX
JZ 0x002c56d8
MOV EAX,dword ptr [RBP + -0xe4]
CMP dword ptr [RDX + 0x20],EAX
JA 0x002c56d8
CMP qword ptr [RDX + 0x28],0x0
MOV byte ptr [RBP + -0xf0],0x0
JNZ 0x002c509e
JMP 0x002c56d8
LEA RBX,[RBP + -0x50]
MOV RSI,R15
MOV RDI,RBX
CALL 0x004443d0
MOV R15,qword ptr [RBP + -0x50]
LEA RDI,[0x558af8]
CALL 0x00177320
MOV EDX,dword ptr [RBP + -0xa4]
MOV RSI,qword ptr [RBP + -0xf8]
MOV R8D,R14D
MOV RDI,qword ptr [RBP + -0xd8]
MOV RCX,RAX
MOV R9,R15
XOR EAX,EAX
CALL 0x0034aed0
MOV RDI,qword ptr [RBP + -0x50]
ADD RBX,0x10
CMP RDI,RBX
JNZ 0x002c5530
JMP 0x002c53ec
MOV EDX,0xffffff8e
MOV R14D,0x13
MOV dword ptr [RBP + -0xec],0xffffffaf
JMP 0x002c55ce
MOV RCX,qword ptr [RBX + 0xc8]
MOV EDX,dword ptr [RCX + 0x4]
ADD EDX,dword ptr [RCX]
LEA ECX,[RDX + 0x2]
JMP 0x002c6565
MOVZX EAX,byte ptr [R15 + 0x48]
TEST AL,AL
JNZ 0x002c509e
MOV EDX,dword ptr [R15 + 0x4c]
CMP EDX,-0x1
JNZ 0x002c5256
JMP 0x002c4e31
MOV dword ptr [RBX],EAX
XOR R13D,R13D
JMP 0x002c624f
TEST RDX,RDX
JZ 0x002c8217
MOV ECX,dword ptr [R15 + 0x6c]
CMP ECX,-0x1
JZ 0x002c81ce
TEST byte ptr [RDX + 0x20],0x1
JZ 0x002c81c9
MOV RSI,qword ptr [RBP + -0xa0]
MOV EAX,dword ptr [RDX + 0x68]
ADD EAX,dword ptr [RDX + 0x60]
LEA EAX,[RCX + RAX*0x1 + 0x1]
MOVZX ECX,byte ptr [RSI + 0x14]
ADD EAX,dword ptr [RDX + 0x8]
TEST CL,CL
JZ 0x002c8329
MOV RSI,qword ptr [RBP + -0xa0]
MOV ESI,dword ptr [RSI + 0x10]
MOV EDX,ESI
MOV dword ptr [RBP + -0xb0],ESI
MOVZX ESI,byte ptr [RBP + -0x90]
AND EDX,0x2000000
CMOVNZ ESI,ECX
CMOVZ R12D,ECX
MOV byte ptr [RBP + -0x90],SIL
JMP 0x002c4c88
MOV RAX,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RAX + 0x348]
LEA RCX,[RAX + 0x340]
TEST RDI,RDI
JZ 0x002c56d8
MOVZX ESI,byte ptr [RBP + -0x90]
MOV RDX,RCX
MOV RAX,RDI
MOV R11D,ESI
MOV ESI,dword ptr [RBP + -0xe4]
JMP 0x002c6880
MOV RDX,RAX
MOV RAX,qword ptr [RAX + 0x10]
TEST RAX,RAX
JZ 0x002c79cb
CMP dword ptr [RAX + 0x20],ESI
JNC 0x002c6870
MOV RAX,qword ptr [RAX + 0x18]
JMP 0x002c6877
MOV R10,qword ptr [R15 + 0x80]
TEST R10,R10
JZ 0x002c5870
MOV RSI,qword ptr [RBP + -0x88]
MOV ECX,dword ptr [RSI + 0x38]
CMP ECX,0x1
JBE 0x002c5870
MOV RAX,qword ptr [RSI + 0x3d8]
MOV R8,qword ptr [RSI + 0x3c8]
MOV EDX,dword ptr [RSI + 0x3e0]
MOV qword ptr [RBP + -0xb0],RAX
SUB RAX,R8
LEA RDX,[RDX + RAX*0x8]
MOV EAX,dword ptr [RSI + 0x3d0]
SUB RDX,RAX
CMP RDX,0x1
JBE 0x002c81a7
MOVZX EAX,byte ptr [RBP + -0x90]
LEA ESI,[RCX + -0x2]
MOV R9D,0x1
MOV ECX,0x1
ADD RSI,0x1
MOV R13D,EAX
JMP 0x002c6926
CMP RCX,RSI
JZ 0x002c7a7b
ADD RCX,0x1
CMP RCX,RDX
JZ 0x002c81a7
MOV RAX,RCX
MOV R11,R9
SHR RAX,0x6
SHL R11,CL
TEST qword ptr [R8 + RAX*0x8],R11
JZ 0x002c6910
MOV byte ptr [RBP + -0x90],R13B
MOV RDI,R10
JMP 0x002c5870
MOV ECX,EAX
SHR ECX,0xb
CMP R14D,0x64
JNZ 0x002c5754
MOV EDX,EDI
AND CX,0x3e0
SHR EAX,0x15
AND DX,0xfc00
OR ECX,EDX
MOV EDX,EAX
AND EDX,0x1f
OR EDX,ECX
JMP 0x002c5471
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
LEA RAX,[RBP + -0x70]
MOV EDX,0x1
MOV qword ptr [RBP + -0xc8],RAX
CALL 0x001d7270
MOV dword ptr [RBP + -0x60],EAX
LEA RAX,[RBP + -0x70]
MOV byte ptr [RBP + -0xd9],0x1
MOV qword ptr [RBP + -0xc8],RAX
MOV qword ptr [RBP + 0x20],RAX
JMP 0x002c665e
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV R13D,dword ptr [RAX]
MOV EAX,R13D
BSWAP EAX
MOV dword ptr [RBP + -0x90],EAX
JZ 0x002c69fe
ADD EAX,EAX
MOV ESI,EAX
AND ESI,0x1fffe
TEST EAX,0x10000
LEA EDX,[RSI + -0x20000]
CMOVZ EDX,ESI
MOV dword ptr [RBP + -0xb8],EDX
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
SUB EAX,dword ptr [RBP + 0x30]
MOV EDX,EAX
SHR EDX,0x1
TEST BL,BL
JNZ 0x002c78e8
XOR EDX,dword ptr [RBP + -0x90]
MOV RBX,qword ptr [RBP + 0x28]
ADD EAX,0x10000
MOVZX EDX,DX
BSWAP EDX
XOR R13D,EDX
MOV dword ptr [RBX],R13D
XOR R13D,R13D
CMP EAX,0x1ffff
SETA R13B
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV EAX,dword ptr [RAX]
MOV R13D,EAX
MOV dword ptr [RBP + -0x90],EAX
BSWAP R13D
JZ 0x002c6a94
LEA EAX,[R13*0x4]
MOV ESI,EAX
AND ESI,0x3fffc
TEST EAX,0x20000
LEA EDX,[RSI + -0x40000]
CMOVZ EDX,ESI
MOV dword ptr [RBP + -0xb8],EDX
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
SUB EAX,dword ptr [RBP + 0x30]
MOV dword ptr [RBP + -0x100],EAX
SHR EAX,0x2
TEST BL,BL
JNZ 0x002c59a8
XOR R13D,EAX
MOV RBX,qword ptr [RBP + 0x28]
MOV RDI,qword ptr [RBP + 0x20]
MOVZX EAX,R13W
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
BSWAP EAX
XOR EAX,dword ptr [RBP + -0x90]
MOV dword ptr [RBX],EAX
CALL 0x001d7270
MOV R13D,0x3
TEST AL,0x3
JNZ 0x002c5940
MOV EAX,dword ptr [RBP + -0x100]
XOR R13D,R13D
ADD EAX,0x20000
CMP EAX,0x3ffff
SETA R13B
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV EDX,dword ptr [RBP + -0xb8]
NEG EDX
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
TEST BL,BL
JNZ 0x002c59a8
MOV RBX,qword ptr [RBP + 0x28]
MOV EAX,EAX
XOR R13D,R13D
BSWAP RAX
MOV qword ptr [RBX],RAX
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV EAX,dword ptr [RAX]
MOV R13D,EAX
JZ 0x002c6b7e
BSWAP EAX
MOVZX ESI,AX
TEST AH,0x80
LEA EDX,[RSI + -0x10000]
CMOVZ EDX,ESI
MOV dword ptr [RBP + -0xb8],EDX
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
TEST BL,BL
JZ 0x002c796b
MOV RAX,qword ptr [RBP + -0x98]
XOR R13D,R13D
MOV dword ptr [RAX],0x0
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV R13D,dword ptr [RAX]
MOV EAX,R13D
BSWAP EAX
MOV dword ptr [RBP + -0x90],EAX
JZ 0x002c6be9
ADD EAX,EAX
MOVZX EDI,AL
TEST AL,0x80
LEA EDX,[RDI + -0x100]
CMOVZ EDX,EDI
MOV dword ptr [RBP + -0xb8],EDX
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
SUB EAX,dword ptr [RBP + 0x30]
MOV EDX,EAX
SHR EDX,0x1
TEST BL,BL
JNZ 0x002c78e8
XOR EDX,dword ptr [RBP + -0x90]
MOV RBX,qword ptr [RBP + 0x28]
SUB EAX,-0x80
AND EDX,0x7f
BSWAP EDX
XOR R13D,EDX
MOV dword ptr [RBX],R13D
XOR R13D,R13D
CMP EAX,0xff
SETA R13B
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV R13D,dword ptr [RAX]
MOV EAX,R13D
BSWAP EAX
MOV dword ptr [RBP + -0x90],EAX
JZ 0x002c6c75
ADD EAX,EAX
MOV ECX,EAX
AND ECX,0x7fe
TEST AH,0x4
LEA EDX,[RCX + -0x800]
CMOVZ EDX,ECX
MOV dword ptr [RBP + -0xb8],EDX
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
SUB EAX,dword ptr [RBP + 0x30]
MOV EDX,EAX
SHR EDX,0x1
TEST BL,BL
JNZ 0x002c78e8
XOR EDX,dword ptr [RBP + -0x90]
MOV RBX,qword ptr [RBP + 0x28]
ADD EAX,0x400
AND EDX,0x3ff
BSWAP EDX
XOR R13D,EDX
MOV dword ptr [RBX],R13D
XOR R13D,R13D
CMP EAX,0x7ff
SETA R13B
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV R13D,dword ptr [RAX]
MOV ESI,R13D
BSWAP ESI
MOV dword ptr [RBP + -0x100],ESI
JZ 0x002c6d02
MOVZX ECX,SI
AND ESI,0x8000
LEA EAX,[RCX + -0x10000]
CMOVZ EAX,ECX
MOV dword ptr [RBP + -0xb8],EAX
CMP dword ptr [RBP + -0xe8],0x9
JZ 0x002c7a87
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
SUB EAX,dword ptr [RBP + 0x30]
TEST BL,BL
JNZ 0x002c59a8
XOR EAX,dword ptr [RBP + -0x100]
MOV RBX,qword ptr [RBP + 0x28]
MOVZX EAX,AX
BSWAP EAX
XOR EAX,R13D
XOR R13D,R13D
MOV dword ptr [RBX],EAX
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV EAX,dword ptr [RAX]
MOV R13D,EAX
MOV dword ptr [RBP + -0x90],EAX
BSWAP R13D
JZ 0x002c6d92
LEA EAX,[R13*0x8]
MOV ECX,EAX
AND ECX,0x1ffff8
TEST EAX,0x100000
LEA EDX,[RCX + -0x200000]
CMOVZ EDX,ECX
MOV dword ptr [RBP + -0xb8],EDX
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
MOV EDX,dword ptr [RBP + 0x30]
AND EDX,0xfffffff8
SUB EAX,EDX
MOV dword ptr [RBP + -0x100],EAX
SHR EAX,0x3
TEST BL,BL
JNZ 0x002c59a8
XOR R13D,EAX
MOV RBX,qword ptr [RBP + 0x28]
MOV EAX,dword ptr [RBP + -0x90]
AND R13D,0x3ffff
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
BSWAP R13D
XOR EAX,R13D
MOV RDI,qword ptr [RBP + 0x20]
MOV dword ptr [RBX],EAX
CALL 0x001d7270
MOV R13D,0x3
TEST AL,0x7
JNZ 0x002c5940
MOV EAX,dword ptr [RBP + -0x100]
XOR R13D,R13D
ADD EAX,0x100000
CMP EAX,0x1fffff
SETA R13B
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV EAX,dword ptr [RAX]
MOV R13D,EAX
MOV dword ptr [RBP + -0x90],EAX
BSWAP R13D
JZ 0x002c6e63
LEA EAX,[R13*0x4]
MOV ESI,EAX
AND ESI,0x1ffffc
TEST EAX,0x100000
LEA EDX,[RSI + -0x200000]
CMOVZ EDX,ESI
MOV dword ptr [RBP + -0xb8],EDX
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
SUB EAX,dword ptr [RBP + 0x30]
MOV dword ptr [RBP + -0x100],EAX
SHR EAX,0x2
TEST BL,BL
JNZ 0x002c59a8
XOR R13D,EAX
MOV RBX,qword ptr [RBP + 0x28]
MOV EAX,dword ptr [RBP + -0x90]
AND R13D,0x7ffff
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
BSWAP R13D
XOR EAX,R13D
MOV RDI,qword ptr [RBP + 0x20]
MOV dword ptr [RBX],EAX
CALL 0x001d7270
MOV R13D,0x3
TEST AL,0x3
JZ 0x002c6e01
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
SUB EAX,dword ptr [RBP + 0x30]
TEST BL,BL
JZ 0x002c5ccb
JMP 0x002c59a8
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV EAX,dword ptr [RAX]
MOV R13D,EAX
MOV dword ptr [RBP + -0x90],EAX
BSWAP R13D
JZ 0x002c6f45
LEA EAX,[R13*0x4]
MOV ECX,EAX
AND ECX,0x7ffffc
TEST EAX,0x400000
LEA EDX,[RCX + -0x800000]
CMOVZ EDX,ECX
MOV dword ptr [RBP + -0xb8],EDX
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
SUB EAX,dword ptr [RBP + 0x30]
MOV dword ptr [RBP + -0x100],EAX
SHR EAX,0x2
TEST BL,BL
JNZ 0x002c59a8
XOR R13D,EAX
MOV RBX,qword ptr [RBP + 0x28]
MOV EAX,dword ptr [RBP + -0x90]
AND R13D,0x1fffff
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
BSWAP R13D
XOR EAX,R13D
MOV RDI,qword ptr [RBP + 0x20]
MOV dword ptr [RBX],EAX
CALL 0x001d7270
MOV R13D,0x3
TEST AL,0x3
JNZ 0x002c5940
MOV EAX,dword ptr [RBP + -0x100]
XOR R13D,R13D
ADD EAX,0x400000
CMP EAX,0x7fffff
SETA R13B
JMP 0x002c5940
MOV byte ptr [RBP + -0xb0],0x0
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV EAX,dword ptr [RAX]
MOV R13D,EAX
MOV dword ptr [RBP + -0x90],EAX
BSWAP R13D
JZ 0x002c7011
LEA EAX,[R13*0x4]
MOV ESI,EAX
AND ESI,0xffffffc
TEST EAX,0x8000000
LEA EDX,[RSI + -0x10000000]
CMOVZ EDX,ESI
MOV dword ptr [RBP + -0xb8],EDX
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
SUB EAX,dword ptr [RBP + 0x30]
MOV dword ptr [RBP + -0x100],EAX
SHR EAX,0x2
TEST BL,BL
JNZ 0x002c59a8
XOR R13D,EAX
MOV RBX,qword ptr [RBP + 0x28]
MOV EAX,dword ptr [RBP + -0x90]
AND R13D,0x3ffffff
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
BSWAP R13D
XOR EAX,R13D
MOV RDI,qword ptr [RBP + 0x20]
MOV dword ptr [RBX],EAX
CALL 0x001d7270
MOV R13D,0x3
TEST AL,0x3
JNZ 0x002c5940
MOV EAX,dword ptr [RBP + -0x100]
XOR R13D,R13D
ADD EAX,0x8000000
CMP EAX,0xfffffff
SETA R13B
JMP 0x002c5940
CMP byte ptr [RBP + -0xb0],0x0
JZ 0x002c8390
MOV RAX,qword ptr [RBP + 0x28]
MOV EAX,dword ptr [RAX]
BSWAP EAX
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c6ed9
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
MOV RAX,qword ptr [RBP + 0x28]
MOVZX EAX,word ptr [RAX]
ROL AX,0x8
CMP byte ptr [RBP + -0xb0],0x0
JZ 0x002c70ec
MOVZX EDX,AX
TEST AX,AX
LEA ECX,[RDX + -0x10000]
CMOVS EDX,ECX
MOV dword ptr [RBP + -0xb8],EDX
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
TEST BL,BL
JNZ 0x002c59a8
MOV EDX,EAX
MOV RBX,qword ptr [RBP + 0x28]
ADD EAX,0x8000
XOR R13D,R13D
ROL DX,0x8
CMP EAX,0xffff
MOV word ptr [RBX],DX
SETA R13B
JMP 0x002c5940
MOV EAX,dword ptr [RBP + -0xc0]
CMP byte ptr [RBP + -0xb0],0x0
MOV dword ptr [RBP + -0xb8],EAX
MOV RAX,qword ptr [RBP + 0x28]
MOV EAX,dword ptr [RAX]
MOV dword ptr [RBP + -0x128],EAX
BSWAP EAX
MOV dword ptr [RBP + -0x118],EAX
JZ 0x002c7171
MOV ECX,dword ptr [RBP + -0x118]
MOVZX ESI,CX
AND CH,0x80
LEA EAX,[RSI + -0x10000]
CMOVZ EAX,ESI
MOV dword ptr [RBP + -0xb8],EAX
CMP dword ptr [RBP + -0xe8],0x9
JZ 0x002c7b9c
CMP byte ptr [RBP + -0xf0],0x0
JZ 0x002c7e85
MOV RAX,qword ptr [RBP + -0xa0]
CMP dword ptr [RBP + -0x90],0x69
MOV RAX,qword ptr [RAX + 0x28]
JZ 0x002c7f25
MOV ECX,dword ptr [RBP + -0x90]
CMP ECX,0x87
JZ 0x002c7f71
CMP ECX,0x9d
JZ 0x002c7f71
TEST RAX,RAX
JZ 0x002c8170
MOV RSI,qword ptr [RBP + -0xa0]
MOV EAX,dword ptr [RAX + 0x40]
MOV RDX,qword ptr [RSI + 0x20]
TEST RDX,RDX
JZ 0x002c7200
CMP qword ptr [RDX + 0xd0],0x0
JZ 0x002c7200
MOV RCX,qword ptr [RBP + -0x88]
MOV RDX,qword ptr [RCX + 0x370]
TEST RDX,RDX
JZ 0x002c7200
ADD EAX,dword ptr [RDX + 0x10c]
SUB EAX,dword ptr [RBP + 0x30]
ADD EAX,0x4
ADD EAX,dword ptr [RBP + -0xb8]
TEST BL,BL
JNZ 0x002c59a8
XOR EAX,dword ptr [RBP + -0x118]
MOV RBX,qword ptr [RBP + 0x28]
XOR R13D,R13D
MOVZX EAX,AX
BSWAP EAX
XOR EAX,dword ptr [RBP + -0x128]
MOV dword ptr [RBX],EAX
JMP 0x002c5940
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
MOV RAX,qword ptr [RBP + -0xa0]
MOV RAX,qword ptr [RAX + 0x28]
TEST RAX,RAX
JZ 0x002c80e1
MOV RSI,qword ptr [RBP + -0xa0]
MOV ECX,dword ptr [RAX + 0x40]
MOV RDX,qword ptr [RSI + 0x20]
MOV dword ptr [RBP + -0x100],ECX
TEST RDX,RDX
JZ 0x002c7297
CMP qword ptr [RDX + 0xd0],0x0
JZ 0x002c7297
MOV RAX,qword ptr [RBP + -0x88]
MOV RAX,qword ptr [RAX + 0x370]
TEST RAX,RAX
JZ 0x002c7297
MOV EAX,dword ptr [RAX + 0x10c]
ADD ECX,EAX
MOV dword ptr [RBP + -0x100],ECX
MOV RAX,qword ptr [RBP + 0x28]
CMP byte ptr [RBP + -0xb0],0x0
MOV R13D,dword ptr [RAX]
BSWAP R13D
JZ 0x002c72d4
CMP dword ptr [RBP + -0x90],0xac
JZ 0x002c8097
MOVZX ESI,R13W
TEST R13D,0x8000
LEA EAX,[RSI + -0x10000]
CMOVZ EAX,ESI
MOV dword ptr [RBP + -0xb8],EAX
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
SUB EAX,dword ptr [RBP + -0x100]
TEST R15,R15
JNZ 0x002c7302
MOV RSI,qword ptr [RBP + -0x88]
ADD EAX,dword ptr [RSI + 0x368]
MOV EDX,EAX
XOR EDX,R13D
MOVZX ECX,DX
AND EDX,0x7f
XOR EDX,R13D
XOR R13D,ECX
CMP dword ptr [RBP + -0x90],0xac
CMOVZ R13D,EDX
TEST BL,BL
JNZ 0x002c59a8
MOV RBX,qword ptr [RBP + 0x28]
ADD EAX,0x8000
BSWAP R13D
MOV dword ptr [RBX],R13D
CMP EAX,0xffff
JBE 0x002c5c87
LEA RDI,[0x558a38]
CALL 0x00177320
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0034a750
MOV R13D,0x1
JMP 0x002c5940
MOV EAX,dword ptr [RBP + -0xc0]
TEST R15,R15
MOV ECX,EBX
SETZ R13B
XOR ECX,0x1
AND CL,byte ptr [RBP + -0xdb]
CMP byte ptr [RBP + -0xb0],0x0
MOV dword ptr [RBP + -0xb8],EAX
MOV RAX,qword ptr [RBP + 0x28]
MOV EAX,dword ptr [RAX]
BSWAP EAX
MOV dword ptr [RBP + -0x100],EAX
JZ 0x002c7644
CMP dword ptr [RBP + -0x90],0x85
MOV EAX,dword ptr [RBP + -0x100]
JZ 0x002c8085
SHL EAX,0x2
AND EAX,0xffffffc
MOV dword ptr [RBP + -0xb8],EAX
TEST CL,CL
JNZ 0x002c7ced
TEST R13B,R13B
JZ 0x002c7ea0
MOV dword ptr [RBP + -0x110],0x2
MOV EAX,0xf0000000
MOV EDI,dword ptr [RBP + 0x30]
MOV R13D,0x1
LEA EDX,[RDI + 0x4]
AND EDX,EAX
OR EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
MOVZX ECX,byte ptr [RBP + -0x110]
SHR EAX,CL
MOV dword ptr [RBP + -0xb8],EAX
TEST R13B,R13B
JNZ 0x002c7450
TEST BL,BL
JNZ 0x002c7450
MOV RDI,R15
CALL 0x002e7200
TEST AL,AL
JNZ 0x002c7450
MOV EAX,dword ptr [RBP + 0x30]
MOV ECX,dword ptr [RBP + -0x110]
MOV EDX,dword ptr [RBP + -0xb8]
ADD EAX,0x4
ADD ECX,0x1a
SHR EDX,0x1a
SHR EAX,CL
CMP EDX,EAX
JNZ 0x002c7359
NOP dword ptr [RAX + RAX*0x1]
MOV ESI,dword ptr [RBP + -0x100]
MOV EAX,dword ptr [RBP + -0xb8]
XOR EAX,ESI
AND EAX,0x3ffffff
XOR ESI,EAX
CMP byte ptr [RBP + -0xdb],0x0
MOV ECX,ESI
JZ 0x002c74bc
MOV EAX,ESI
SHR EAX,0x1a
CMP dword ptr [RBP + -0x90],0x64
JZ 0x002c80af
CMP dword ptr [RBP + -0x90],0x85
JZ 0x002c80ce
CMP EAX,0x3
SETZ DL
CMP EAX,0x1d
SETZ AL
OR EDX,EAX
MOV EAX,0x1d
TEST DL,DL
JNZ 0x002c74b1
TEST BL,BL
JZ 0x002c8155
AND ECX,0x3ffffff
SHL EAX,0x1a
OR ECX,EAX
MOV RAX,qword ptr [0x0067cb08]
CMP qword ptr [RAX + 0x10],0x0
JZ 0x002c8324
TEST BL,BL
JZ 0x002c7a5a
MOV RAX,qword ptr [RBP + -0x98]
XOR R13D,R13D
MOV dword ptr [RAX],ECX
JMP 0x002c5940
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c6a55
MOV RAX,qword ptr [RBP + 0x28]
MOV byte ptr [RBP + -0xb0],0x0
MOV EAX,dword ptr [RAX]
MOV dword ptr [RBP + -0x128],EAX
BSWAP EAX
MOV dword ptr [RBP + -0x118],EAX
JMP 0x002c7171
MOV byte ptr [RBP + -0xb0],0x0
JMP 0x002c70ec
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c59bd
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c6b55
MOV EAX,dword ptr [RBP + -0xc0]
CMP byte ptr [RBP + -0xb0],0x0
MOV dword ptr [RBP + -0xb8],EAX
JZ 0x002c6b1a
MOV RAX,qword ptr [RBP + 0x28]
MOV RAX,qword ptr [RAX]
BSWAP RAX
MOV qword ptr [RBP + -0xb8],RAX
JMP 0x002c6b1a
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c6f06
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c6fd2
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c6d53
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c6e24
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c6ccf
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c6bb8
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c6c3e
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c69c5
MOV RAX,qword ptr [RBP + -0xa0]
MOV RAX,qword ptr [RAX + 0x28]
TEST RAX,RAX
JZ 0x002c80f0
MOV byte ptr [RBP + -0xb0],0x0
JMP 0x002c7253
MOV RAX,qword ptr [RBP + 0x28]
MOV byte ptr [RBP + -0xb0],0x0
TEST R15,R15
MOV ECX,EBX
SETZ R13B
XOR ECX,0x1
AND CL,byte ptr [RBP + -0xdb]
MOV EAX,dword ptr [RAX]
BSWAP EAX
MOV dword ptr [RBP + -0x100],EAX
TEST CL,CL
JNZ 0x002c7cf3
CMP byte ptr [RBP + -0xdb],0x1
JZ 0x002c73c9
CMP dword ptr [RBP + -0x90],0x85
JNZ 0x002c73c9
TEST R13B,R13B
JNZ 0x002c7f11
MOV dword ptr [RBP + -0x110],0x1
MOV ECX,dword ptr [RBP + -0xb8]
MOV EDX,ECX
AND EDX,0x7ffffff
AND ECX,0x4000000
LEA EAX,[RDX + -0x8000000]
CMOVNZ EDX,EAX
JMP 0x002c73f5
MOV RAX,qword ptr [RBP + -0x98]
MOV EBX,dword ptr [RBP + -0xb8]
XOR R13D,R13D
MOV dword ptr [RAX],EBX
JMP 0x002c5940
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
MOV EDX,EAX
CALL 0x001d7270
ADD EAX,0x8000
XOR AX,AX
MOV dword ptr [RBP + -0x100],EAX
MOV RAX,qword ptr [RBP + -0xa0]
MOV RDX,qword ptr [RAX + 0x20]
TEST RDX,RDX
JZ 0x002c838b
CMP qword ptr [RDX + 0xd0],0x0
JZ 0x002c80c2
MOV RAX,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RAX + 0x370]
TEST RDI,RDI
JZ 0x002c82c4
MOV ESI,dword ptr [RBP + -0x100]
CALL 0x002c47d0
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
SUB EAX,dword ptr [RBP + -0x100]
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c5f0e
TEST RDI,RDI
JZ 0x002c81a2
MOV RDI,qword ptr [RBP + -0x88]
MOVSXD RCX,dword ptr [RBP + -0xc0]
XOR EDX,EDX
MOV ESI,dword ptr [RBP + -0xe4]
MOV RAX,qword ptr [RDI]
CALL qword ptr [RAX + 0x160]
JMP 0x002c5e6e
MOV RDI,qword ptr [RDX + 0xc8]
JMP 0x002c5fbe
TEST RDI,RDI
JZ 0x002c832e
MOV RDI,qword ptr [RBP + -0x88]
MOVSXD RCX,dword ptr [RBP + -0xc0]
MOV EDX,0x2
MOV ESI,dword ptr [RBP + -0xe4]
MOV RAX,qword ptr [RDI]
CALL qword ptr [RAX + 0x160]
JMP 0x002c5c48
CMP dword ptr [RBP + -0xe8],0x4
JZ 0x002c8110
CMP dword ptr [RBP + -0xe8],0x9
JNZ 0x002c8373
MOV EDI,0x40
CALL 0x0049cb70
MOV RBX,qword ptr [RBP + 0x28]
MOV byte ptr [RAX + 0x3c],0x0
MOV RDI,RAX
XOR R13D,R13D
MOV dword ptr [RAX + 0x38],0x0
LEA RSI,[0x67db20]
MOV qword ptr [RAX + 0x10],RBX
MOV RBX,qword ptr [RBP + -0x88]
MOV qword ptr [RAX + 0x18],RBX
MOV RBX,qword ptr [RBP + 0x20]
MOV qword ptr [RAX + 0x20],RBX
MOV EBX,dword ptr [RBP + -0xc0]
MOV dword ptr [RAX + 0x28],EBX
MOV EBX,dword ptr [RBP + -0x90]
MOV dword ptr [RAX + 0x2c],EBX
MOV EBX,dword ptr [RBP + -0xe4]
MOV dword ptr [RAX + 0x30],EBX
MOVZX EBX,byte ptr [RBP + -0xb0]
MOV byte ptr [RAX + 0x34],BL
CALL 0x004a11e0
ADD qword ptr [0x0067db30],0x1
JMP 0x002c624f
TEST RDI,RDI
JZ 0x002c8364
MOV RDI,qword ptr [RBP + -0x88]
MOVSXD RCX,dword ptr [RBP + -0xc0]
XOR EDX,EDX
MOV ESI,dword ptr [RBP + -0xe4]
MOV RAX,qword ptr [RDI]
CALL qword ptr [RAX + 0x160]
JMP 0x002c6043
MOV RAX,qword ptr [RDI + 0xc8]
JMP 0x002c5bee
TEST RDI,RDI
JZ 0x002c8369
MOV RDI,qword ptr [RBP + -0x88]
MOVSXD RCX,dword ptr [RBP + -0xc0]
XOR EDX,EDX
MOV ESI,dword ptr [RBP + -0xe4]
MOV RAX,qword ptr [RDI]
CALL qword ptr [RAX + 0x160]
JMP 0x002c5ddf
TEST RDI,RDI
JZ 0x002c836e
MOV RDI,qword ptr [RBP + -0x88]
MOVSXD RCX,dword ptr [RBP + -0xc0]
MOV EDX,0x1
MOV ESI,dword ptr [RBP + -0xe4]
MOV RAX,qword ptr [RDI]
CALL qword ptr [RAX + 0x160]
JMP 0x002c5b06
LEA RDX,[0x55eb38]
MOV ESI,0x2e62
LEA RDI,[0x55840b]
CALL 0x00352af0
MOV RAX,qword ptr [RBP + -0x98]
XOR R13D,R13D
MOV dword ptr [RAX],EDX
JMP 0x002c5940
XOR EAX,EAX
JMP 0x002c5223
CALL 0x00443190
XOR EAX,0x1
JMP 0x002c54b9
MOV RAX,qword ptr [RBP + -0x88]
LEA RDI,[0x558a88]
MOV RBX,qword ptr [RAX + 0x8]
CALL 0x00177320
SUB RSP,0x8
MOV R8D,R14D
MOV EDX,dword ptr [RBP + -0xa4]
PUSH RBX
MOV R9D,dword ptr [RBP + -0xe4]
MOV RCX,RAX
XOR EAX,EAX
MOV RSI,qword ptr [RBP + -0xf8]
MOV RDI,qword ptr [RBP + -0xd8]
CALL 0x0034aed0
POP RCX
POP RSI
JMP 0x002c53ec
MOV EAX,R13D
MOV RBX,qword ptr [RBP + 0x28]
AND EAX,0xffff
JMP 0x002c5c85
MOV RDI,qword ptr [RAX + 0x318]
LEA RDX,[RAX + 0x310]
TEST RDI,RDI
JZ 0x002c64ab
MOVZX ECX,byte ptr [RBP + -0x90]
MOV RAX,RDX
MOV ESI,ECX
MOV ECX,dword ptr [RBP + -0xe4]
JMP 0x002c79c0
MOV RAX,RDI
MOV RDI,qword ptr [RDI + 0x10]
TEST RDI,RDI
JZ 0x002c6490
CMP dword ptr [RDI + 0x20],ECX
JNC 0x002c79b0
MOV RDI,qword ptr [RDI + 0x18]
JMP 0x002c79b7
MOV byte ptr [RBP + -0x90],R11B
CMP RCX,RDX
JZ 0x002c56d8
MOV EAX,dword ptr [RBP + -0xe4]
CMP dword ptr [RDX + 0x20],EAX
JA 0x002c56d8
CMP qword ptr [RDX + 0x28],0x0
JZ 0x002c56d8
TEST R13,R13
JNZ 0x002c56ce
MOV RAX,RCX
MOVZX ESI,byte ptr [RBP + -0x90]
MOV EDX,dword ptr [RBP + -0xe4]
JMP 0x002c7a1c
MOV RAX,RDI
MOV RDI,qword ptr [RDI + 0x10]
TEST RDI,RDI
JZ 0x002c7a30
CMP dword ptr [RDI + 0x20],EDX
JNC 0x002c7a10
MOV RDI,qword ptr [RDI + 0x18]
JMP 0x002c7a17
MOV byte ptr [RBP + -0x90],SIL
CMP RCX,RAX
JZ 0x002c7a4b
MOV ESI,dword ptr [RBP + -0xe4]
CMP dword ptr [RAX + 0x20],ESI
JA 0x002c7a4b
MOV RDI,qword ptr [RAX + 0x28]
XOR R12D,R12D
MOV byte ptr [RBP + -0xf0],0x0
JMP 0x002c5870
MOV EAX,ECX
JMP 0x002c5ccb
MOV R13D,EAX
MOV RAX,qword ptr [RBP + -0xc8]
MOV byte ptr [RBP + -0xd9],0x1
MOV qword ptr [RBP + 0x20],RAX
JMP 0x002c4e56
MOV byte ptr [RBP + -0x90],R13B
JMP 0x002c5870
LEA RAX,[0x67db00]
MOV RDI,qword ptr [RAX]
MOV qword ptr [RBP + -0x90],RDI
CMP RDI,RAX
JNZ 0x002c7acd
JMP 0x002c6d0f
MOV RAX,qword ptr [RBP + -0x90]
MOV RAX,qword ptr [RAX]
MOV qword ptr [RBP + -0x90],RAX
LEA RSI,[0x67db00]
CMP qword ptr [RBP + -0x90],RSI
JZ 0x002c6d0f
MOV RAX,qword ptr [RBP + -0x90]
MOV ESI,dword ptr [RBP + -0xe4]
CMP ESI,dword ptr [RAX + 0x30]
JNZ 0x002c7aa8
MOV RSI,RAX
MOV RAX,qword ptr [RAX + 0x10]
CMP byte ptr [RSI + 0x34],0x0
MOV EDX,dword ptr [RSI + 0x28]
MOV qword ptr [RBP + -0x118],RAX
MOV EAX,dword ptr [RAX]
MOV dword ptr [RBP + -0x120],EAX
BSWAP EAX
MOV dword ptr [RBP + -0x124],EAX
JZ 0x002c7b11
MOV EDX,dword ptr [RBP + -0xb8]
SHL EAX,0x10
ADD EDX,EAX
MOV RAX,qword ptr [RBP + -0x90]
MOV EDI,dword ptr [RAX + 0x38]
MOV RSI,qword ptr [RAX + 0x18]
MOV dword ptr [RBP + -0x110],EDI
MOV RDI,qword ptr [RAX + 0x20]
CALL 0x001d7270
MOV EDX,0x8000
SUB EDX,dword ptr [RBP + -0x110]
ADD EDX,EAX
SHR EDX,0x10
TEST BL,BL
JZ 0x002c7ecc
MOV RAX,qword ptr [RBP + -0x98]
MOV dword ptr [RAX],EDX
MOV RAX,qword ptr [RBP + -0x90]
MOV RSI,qword ptr [RAX]
MOV RDI,RAX
SUB qword ptr [0x0067db10],0x1
MOV qword ptr [RBP + -0x110],RSI
CALL 0x004a1200
MOV RDI,qword ptr [RBP + -0x90]
CALL 0x0049e340
MOV RSI,qword ptr [RBP + -0x110]
MOV qword ptr [RBP + -0x90],RSI
JMP 0x002c7ab9
TEST DL,DL
JZ 0x002c5ccb
JMP 0x002c5c85
MOVZX EAX,BL
MOV dword ptr [RBP + -0x124],EAX
LEA RAX,[0x67db40]
MOV RSI,qword ptr [RAX]
MOV qword ptr [RBP + -0x100],RSI
CMP RSI,RAX
JNZ 0x002c7be5
JMP 0x002c7d50
MOV RAX,qword ptr [RBP + -0x100]
MOV RAX,qword ptr [RAX]
MOV qword ptr [RBP + -0x100],RAX
LEA RSI,[0x67db40]
CMP qword ptr [RBP + -0x100],RSI
JZ 0x002c7d50
MOV RAX,qword ptr [RBP + -0x100]
MOV ESI,dword ptr [RBP + -0xe4]
CMP ESI,dword ptr [RAX + 0x30]
JNZ 0x002c7bc0
MOV EAX,dword ptr [RAX + 0x2c]
MOV ESI,dword ptr [RBP + -0x90]
MOV EDI,EAX
MOV dword ptr [RBP + -0x110],EAX
CALL 0x0028cc00
TEST AL,AL
JZ 0x002c7bc0
MOV RAX,qword ptr [RBP + -0x100]
MOV ESI,dword ptr [RBP + -0x110]
MOV RDI,qword ptr [RAX + 0x10]
MOV RDX,qword ptr [RAX + 0x20]
MOV ECX,dword ptr [RAX + 0x28]
MOV R11,qword ptr [RAX + 0x18]
MOVZX R10D,byte ptr [RAX + 0x34]
MOV R13D,dword ptr [RAX + 0x38]
MOV qword ptr [RBP + -0x138],RDX
MOV dword ptr [RBP + -0x12c],ECX
MOVZX R9D,byte ptr [RAX + 0x3c]
MOV qword ptr [RBP + -0x120],RDI
CALL 0x00296ff0
MOV ESI,dword ptr [RBP + -0x124]
MOV R8D,R13D
MOV ECX,dword ptr [RBP + -0xb8]
MOV EAX,dword ptr [RBP + -0x110]
PUSH qword ptr [RBP + -0x98]
MOV RDX,qword ptr [RBP + -0x138]
PUSH RSI
MOV RSI,R11
PUSH qword ptr [RBP + -0xa0]
MOV RDI,qword ptr [RBP + -0x120]
PUSH RCX
PUSH R10
MOV ECX,dword ptr [RBP + -0x12c]
PUSH RAX
CALL 0x002a8180
MOV ESI,dword ptr [RBP + -0x110]
MOV R13D,EAX
ADD RSP,0x30
XOR EDX,EDX
MOV RDI,qword ptr [RBP + -0x120]
CALL 0x00293050
CMP R13D,0x1
JZ 0x002c5940
MOV RAX,qword ptr [RBP + -0x100]
MOV RDI,RAX
MOV R13,qword ptr [RAX]
SUB qword ptr [0x0067db50],0x1
CALL 0x004a1200
MOV RDI,qword ptr [RBP + -0x100]
CALL 0x0049e340
MOV qword ptr [RBP + -0x100],R13
JMP 0x002c7bd1
MOV byte ptr [RBP + -0xb0],CL
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
XOR EDX,EDX
CALL 0x001d7270
XOR EDX,EDX
AND EAX,0x3
CMP dword ptr [RBP + -0x90],0x4
SETZ DL
CMP EAX,EDX
JZ 0x002c764c
LEA RDI,[0x5589b8]
CALL 0x00177320
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0034a800
MOV R13D,0x2
JMP 0x002c5940
MOV RBX,qword ptr [RBP + 0x28]
MOV EAX,R13D
XOR R13D,R13D
BSWAP EAX
MOV dword ptr [RBX],EAX
JMP 0x002c5940
MOV RAX,qword ptr [0x0067db20]
LEA RCX,[0x67db20]
MOV qword ptr [RBP + -0x100],RAX
CMP RAX,RCX
JNZ 0x002c7d95
JMP 0x002c717e
MOV RAX,qword ptr [RBP + -0x100]
MOV RAX,qword ptr [RAX]
MOV qword ptr [RBP + -0x100],RAX
LEA RSI,[0x67db20]
CMP qword ptr [RBP + -0x100],RSI
JZ 0x002c717e
MOV RAX,qword ptr [RBP + -0x100]
MOV ESI,dword ptr [RBP + -0xe4]
CMP ESI,dword ptr [RAX + 0x30]
JNZ 0x002c7d70
MOV EAX,dword ptr [RAX + 0x2c]
MOV ESI,dword ptr [RBP + -0x90]
MOV EDI,EAX
MOV dword ptr [RBP + -0x110],EAX
CALL 0x0028cc00
TEST AL,AL
JZ 0x002c7d70
MOV RAX,qword ptr [RBP + -0x100]
MOV ESI,dword ptr [RBP + -0x110]
MOV RDI,qword ptr [RAX + 0x10]
MOV ECX,dword ptr [RAX + 0x28]
MOV R10,qword ptr [RAX + 0x18]
MOV R13,qword ptr [RAX + 0x20]
MOV dword ptr [RBP + -0x12c],ECX
MOVZX R11D,byte ptr [RAX + 0x34]
MOV qword ptr [RBP + -0x120],RDI
CALL 0x00296ff0
MOV ECX,dword ptr [RBP + -0x124]
SUB RSP,0x8
PUSH qword ptr [RBP + -0x98]
MOV R9D,dword ptr [RBP + -0xb8]
MOVZX R8D,R11B
MOV RDX,R13
MOV RSI,R10
PUSH RCX
MOV RDI,qword ptr [RBP + -0x120]
PUSH qword ptr [RBP + -0xa0]
MOV ECX,dword ptr [RBP + -0x12c]
CALL 0x002c48c0
MOV ESI,dword ptr [RBP + -0x110]
MOV R13D,EAX
ADD RSP,0x20
XOR EDX,EDX
MOV RDI,qword ptr [RBP + -0x120]
CALL 0x00293050
CMP R13D,0x1
JZ 0x002c5940
MOV RAX,qword ptr [RBP + -0x100]
MOV RDI,RAX
MOV R13,qword ptr [RAX]
SUB qword ptr [0x0067db30],0x1
CALL 0x004a1200
MOV RDI,qword ptr [RBP + -0x100]
CALL 0x0049e340
MOV qword ptr [RBP + -0x100],R13
JMP 0x002c7d81
MOV EDX,dword ptr [RBP + -0xb8]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
CALL 0x001d7270
JMP 0x002c720c
MOV dword ptr [RBP + -0x110],0x2
MOV EDI,dword ptr [RBP + -0xb8]
MOV EDX,EDI
AND EDX,0xfffffff
AND EDI,0x8000000
LEA EAX,[RDX + -0x10000000]
CMOVNZ EDX,EAX
JMP 0x002c73f5
XOR EDX,dword ptr [RBP + -0x124]
MOV RSI,qword ptr [RBP + -0x118]
MOVZX EAX,DX
BSWAP EAX
XOR EAX,dword ptr [RBP + -0x120]
MOV dword ptr [RSI],EAX
JMP 0x002c7b4f
MOV RBX,qword ptr [RBP + 0x28]
BSWAP EAX
XOR R13D,R13D
MOV dword ptr [RBX],EAX
JMP 0x002c6314
MOV RAX,qword ptr [RBP + 0x28]
MOV EDX,dword ptr [RAX]
BSWAP EDX
JMP 0x002c62f0
MOV RDI,qword ptr [R15 + 0x70]
JMP 0x002c64ab
MOV dword ptr [RBP + -0x110],0x1
MOV EAX,0xf8000000
JMP 0x002c73e1
TEST RAX,RAX
JZ 0x002c817e
MOV RSI,qword ptr [RBP + -0xa0]
MOV EAX,dword ptr [RAX + 0x40]
MOV RDX,qword ptr [RSI + 0x20]
TEST RDX,RDX
JZ 0x002c7f64
CMP qword ptr [RDX + 0xd0],0x0
JZ 0x002c7f64
MOV RCX,qword ptr [RBP + -0x88]
MOV RDX,qword ptr [RCX + 0x370]
TEST RDX,RDX
JZ 0x002c7f64
ADD EAX,dword ptr [RDX + 0x10c]
MOV EDX,dword ptr [RBP + 0x30]
AND EDX,0xfffffffc
SUB EAX,EDX
JMP 0x002c7206
TEST RAX,RAX
JZ 0x002c8177
MOV RCX,qword ptr [RBP + -0xa0]
MOV EAX,dword ptr [RAX + 0x40]
MOV RDX,qword ptr [RCX + 0x20]
TEST RDX,RDX
JZ 0x002c7fb0
CMP qword ptr [RDX + 0xd0],0x0
JZ 0x002c7fb0
MOV RCX,qword ptr [RBP + -0x88]
MOV RDX,qword ptr [RCX + 0x370]
TEST RDX,RDX
JZ 0x002c7fb0
ADD EAX,dword ptr [RDX + 0x10c]
SUB EAX,dword ptr [RBP + 0x30]
ADD EAX,0x3
JMP 0x002c7206
MOVZX EAX,byte ptr [RBP + -0xb0]
MOVZX EBX,BL
MOV R8D,dword ptr [RBP + 0x30]
PUSH qword ptr [RBP + -0x98]
MOV R9D,dword ptr [RBP + -0xf0]
PUSH RBX
MOV ECX,dword ptr [RBP + -0xc0]
PUSH qword ptr [RBP + -0xa0]
MOV RDX,qword ptr [RBP + 0x20]
PUSH 0x0
AND R9D,0x1
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x28]
PUSH RAX
MOV EAX,dword ptr [RBP + -0x90]
PUSH RAX
CALL 0x002a8180
MOV R13D,EAX
ADD RSP,0x30
JMP 0x002c5940
MOV RAX,qword ptr [RBP + 0x28]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x20]
MOV EAX,dword ptr [RAX]
MOV R13D,EAX
MOV dword ptr [RBP + -0x90],EAX
BSWAP R13D
MOV EDX,R13D
SHL EDX,0x10
CMP byte ptr [RBP + -0xb0],0x0
CMOVZ EDX,dword ptr [RBP + -0xc0]
CALL 0x001d7270
SUB EAX,dword ptr [RBP + 0x30]
ADD EAX,0x8000
SHR EAX,0x10
TEST BL,BL
JNZ 0x002c59a8
XOR EAX,R13D
MOV RBX,qword ptr [RBP + 0x28]
XOR R13D,R13D
MOVZX EAX,AX
BSWAP EAX
XOR EAX,dword ptr [RBP + -0x90]
MOV dword ptr [RBX],EAX
JMP 0x002c5940
MOV dword ptr [RBP + -0x90],0x0
JMP 0x002c6172
ADD EAX,EAX
AND EAX,0x7fffffe
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c7644
LEA EAX,[R13*0x4]
AND EAX,0x1fc
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c72d4
SUB EAX,0x6
CMP EAX,0x1
MOV EAX,0x7
SETBE DL
JMP 0x002c74a5
MOV RDI,qword ptr [RDX + 0xc8]
JMP 0x002c7705
SUB EAX,0x3c
CMP EAX,0x1
MOV EAX,0x3c
SETBE DL
JMP 0x002c74a5
MOV dword ptr [RBP + -0x100],0x0
JMP 0x002c7297
MOV RAX,qword ptr [RBP + 0x28]
MOV byte ptr [RBP + -0xb0],0x0
MOV dword ptr [RBP + -0x100],0x0
MOV R13D,dword ptr [RAX]
BSWAP R13D
JMP 0x002c72d4
SUB RSP,0x8
MOVZX EBX,BL
PUSH qword ptr [RBP + -0x98]
XOR R9D,R9D
MOVZX R8D,byte ptr [RBP + -0xb0]
PUSH RBX
MOV ECX,dword ptr [RBP + -0xc0]
PUSH qword ptr [RBP + -0xa0]
MOV RDX,qword ptr [RBP + 0x20]
MOV RSI,qword ptr [RBP + -0x88]
MOV RDI,qword ptr [RBP + 0x28]
CALL 0x002c48c0
MOV R13D,EAX
ADD RSP,0x20
JMP 0x002c624f
LEA RDI,[0x5589e0]
CALL 0x00177320
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0034a750
JMP 0x002c7d32
XOR EAX,EAX
JMP 0x002c7200
XOR EAX,EAX
JMP 0x002c7fb0
XOR EAX,EAX
JMP 0x002c7f64
LEA RDX,[0x55eb38]
MOV ESI,0x3035
LEA RDI,[0x55840b]
CALL 0x00352af0
CALL 0x00290a70
CALL 0x00290a70
LEA RDX,[0x55ea70]
MOV ESI,0x723
LEA RDI,[0x55840b]
CALL 0x00352af0
CALL 0x00291e90
CALL 0x00291e90
CALL 0x00291e90
LEA RDX,[0x55ea20]
MOV ESI,0x9ed
LEA RDI,[0x55840b]
CALL 0x00352af0
CALL 0x00290a10
CALL 0x00290a50
CALL 0x00290a70
LEA RDX,[0x55eb38]
MOV ESI,0x2e88
LEA RDI,[0x55840b]
CALL 0x00352af0
CALL 0x00291e90
CALL 0x00290a30
CALL 0x00290a50
LEA RAX,[RBP + -0x70]
LEA RDX,[0x55eb00]
MOV ESI,0x668
LEA RDI,[0x55840b]
MOV qword ptr [RBP + -0xc8],RAX
CALL 0x00352af0
LEA RAX,[RBP + -0x70]
LEA RDX,[0x55eb20]
MOV ESI,0x65f
LEA RDI,[0x55840b]
MOV qword ptr [RBP + -0xc8],RAX
CALL 0x00352af0
CALL 0x00290a70
CALL 0x00290a70
CALL 0x00290a70
CALL 0x00290a70
CALL 0x00290a70
CALL 0x00290a70
CALL 0x00290a70
CALL 0x00293370
LEA RDX,[0x55e998]
MOV ESI,0x86a
LEA RDI,[0x55840b]
CALL 0x00352af0
LEA RDX,[0x55eb38]
MOV ESI,0x2d5f
LEA RDI,[0x55840b]
CALL 0x00352af0
CALL 0x00291e90
CALL 0x00290a30
CALL 0x00293370
TEST R12B,R12B
JNZ 0x002c4d83
JMP 0x002c5869
CALL 0x00290a70
LEA RDX,[0x55eb38]
MOV ESI,0x2f3d
LEA RDI,[0x55840b]
CALL 0x00352af0
LEA RDX,[0x55eb38]
MOV ESI,0x2e46
LEA RDI,[0x55840b]
CALL 0x00352af0
LEA RDX,[0x55eb38]
MOV ESI,0x2eda
LEA RDI,[0x55840b]
CALL 0x00352af0
CALL 0x002932f0
CALL 0x00290d80
CALL 0x00290a70
CALL 0x00290a70
CALL 0x00290a70
CALL 0x00290a50
CALL 0x00290e30
LEA RDX,[0x55e970]
MOV ESI,0x895
LEA RDI,[0x55840b]
CALL 0x00352af0
CALL 0x00290a70
CALL 0x00290a70
CALL 0x00290a70
CALL 0x00290a70
LEA RDX,[0x55eb38]
MOV ESI,0x2f66
LEA RDI,[0x55840b]
CALL 0x00352af0
CALL 0x00290a70
MOV EAX,dword ptr [RBP + -0xc0]
MOV dword ptr [RBP + -0xb8],EAX
JMP 0x002c6ed9
CALL 0x00290a70
CALL 0x00290a70
CALL 0x00290d80
CALL 0x00291e90
(translation_unit "/* WARNING: Type propagation algorithm not settling */\n/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */\n\nundefined8\nFUN_002c4b00(ulong *param_1,long param_2,int param_3,long param_4,undefined8 param_5,long param_6,\n            uint *param_7,undefined8 *param_8,uint *param_9,ulong *param_10,uint param_11)\n\n{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  long *plVar3;\n  int *piVar4;\n  ulong uVar5;\n  uint *puVar6;\n  uint uVar7;\n  undefined1 *puVar8;\n  long *plVar9;\n  bool bVar10;\n  byte bVar11;\n  char cVar12;\n  char cVar13;\n  char cVar14;\n  ushort uVar15;\n  uint uVar16;\n  uint uVar17;\n  undefined4 uVar18;\n  uint uVar19;\n  int iVar20;\n  undefined8 uVar21;\n  undefined8 uVar22;\n  ulong uVar23;\n  long lVar24;\n  ulong uVar25;\n  long *plVar26;\n  long *plVar27;\n  long *plVar28;\n  ushort uVar29;\n  long lVar30;\n  int extraout_EDX;\n  uint uVar31;\n  uint uVar32;\n  long *plVar33;\n  ulong uVar34;\n  uint uVar35;\n  uint uVar36;\n  ulong *puVar37;\n  int iVar38;\n  byte *pbVar39;\n  undefined8 *puVar40;\n  byte *pbVar41;\n  char *pcVar42;\n  undefined8 uVar43;\n  uint *puVar44;\n  uint uVar45;\n  ulong uVar46;\n  uint uVar47;\n  bool bVar48;\n  bool bVar49;\n  bool bVar50;\n  bool bVar51;\n  byte bVar52;\n  uint local_130;\n  sbyte local_118;\n  undefined8 *local_108;\n  uint local_f4;\n  byte local_ec;\n  uint local_e8;\n  byte local_e3;\n  byte local_e2;\n  bool local_e1;\n  uint *local_d0;\n  uint local_c8;\n  uint local_c4;\n  uint local_c0;\n  uint local_b0;\n  undefined8 *local_98;\n  uint local_84;\n  uint auStack_80 [2];\n  undefined8 local_78;\n  undefined4 local_70;\n  uint local_68;\n  undefined1 *local_58 [2];\n  undefined1 auStack_48 [24];\n  \n  bVar52 = 0;\n  uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14);\n  uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24);\n  uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18);\n  uVar17 = *param_7;\n  uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar17 = param_7[1];\n  uVar47 = uVar17 >> 0x18;\n  uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar34 = (ulong)uVar36;\n  uVar7 = uVar36 >> 8;\n  if (param_3 == 4) {\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }\n  else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }\n  local_70 = 0x80000000;\n  local_68 = 0;\n  plVar3 = *(long **)(param_2 + 0x10);\n  local_78 = 0xffffffff00000000;\n  if (param_8 == (undefined8 *)0x0) {\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */\n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }\n  else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    /* try { // try from 002c4c4a to 002c54e2 has its CatchHandler @ 002c83b5 */\n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  if (*(int *)((long)param_8 + 0x4c) == -1) {\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c5256:\n  local_d0 = (uint *)&local_78;\n  uVar36 = (uint)uVar34;\n  if (((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')) {\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }\n  goto LAB_002c52f0;\nLAB_002c82c4:\n  FUN_00293370();\nLAB_002c82c9:\n  uVar36 = (uint)uVar34;\n  if ((char)puVar44 == '\0') {\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }\n  else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00291e90();\n    }\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar17;\n  bVar49 = (bool)((byte)local_98 & bVar48);\n  goto joined_r0x002c52d3;\nswitchD_002c4f87_caseD_9:\n  bVar48 = false;\nswitchD_002c5379_caseD_9:\n  if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }\n  if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8333;\n  puVar40 = param_8;\n  local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n  local_98._0_1_ = (byte)puVar40;\n  lVar30 = *(long *)(param_4 + 0x20);\n  if (lVar30 != 0) goto LAB_002c6206;\n  FUN_00290a70();\nLAB_002c6490:\n  uVar17 = (uint)(byte)local_98;\nLAB_002c64ab:\n  local_d0 = (uint *)&local_78;\n  local_68 = FUN_00298450();\n  bVar49 = uVar47 == 100;\n  puVar44 = (uint *)0x0;\n  if ((uVar36 & 0xf7) == 0x85) goto LAB_002c7a61;\n  local_e1 = true;\n  bVar48 = bVar49;\nLAB_002c64da:\n  local_d0 = (uint *)&local_78;\n  puVar44 = (uint *)0x0;\n  param_9 = local_d0;\n  goto LAB_002c4e43;\nLAB_002c7a61:\n  param_9 = local_d0;\n  local_e1 = true;\n  goto LAB_002c4e56;\n}\n\n" comment comment (function_definition "undefined8\nFUN_002c4b00(ulong *param_1,long param_2,int param_3,long param_4,undefined8 param_5,long param_6,\n            uint *param_7,undefined8 *param_8,uint *param_9,ulong *param_10,uint param_11)\n\n{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  long *plVar3;\n  int *piVar4;\n  ulong uVar5;\n  uint *puVar6;\n  uint uVar7;\n  undefined1 *puVar8;\n  long *plVar9;\n  bool bVar10;\n  byte bVar11;\n  char cVar12;\n  char cVar13;\n  char cVar14;\n  ushort uVar15;\n  uint uVar16;\n  uint uVar17;\n  undefined4 uVar18;\n  uint uVar19;\n  int iVar20;\n  undefined8 uVar21;\n  undefined8 uVar22;\n  ulong uVar23;\n  long lVar24;\n  ulong uVar25;\n  long *plVar26;\n  long *plVar27;\n  long *plVar28;\n  ushort uVar29;\n  long lVar30;\n  int extraout_EDX;\n  uint uVar31;\n  uint uVar32;\n  long *plVar33;\n  ulong uVar34;\n  uint uVar35;\n  uint uVar36;\n  ulong *puVar37;\n  int iVar38;\n  byte *pbVar39;\n  undefined8 *puVar40;\n  byte *pbVar41;\n  char *pcVar42;\n  undefined8 uVar43;\n  uint *puVar44;\n  uint uVar45;\n  ulong uVar46;\n  uint uVar47;\n  bool bVar48;\n  bool bVar49;\n  bool bVar50;\n  bool bVar51;\n  byte bVar52;\n  uint local_130;\n  sbyte local_118;\n  undefined8 *local_108;\n  uint local_f4;\n  byte local_ec;\n  uint local_e8;\n  byte local_e3;\n  byte local_e2;\n  bool local_e1;\n  uint *local_d0;\n  uint local_c8;\n  uint local_c4;\n  uint local_c0;\n  uint local_b0;\n  undefined8 *local_98;\n  uint local_84;\n  uint auStack_80 [2];\n  undefined8 local_78;\n  undefined4 local_70;\n  uint local_68;\n  undefined1 *local_58 [2];\n  undefined1 auStack_48 [24];\n  \n  bVar52 = 0;\n  uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14);\n  uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24);\n  uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18);\n  uVar17 = *param_7;\n  uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar17 = param_7[1];\n  uVar47 = uVar17 >> 0x18;\n  uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar34 = (ulong)uVar36;\n  uVar7 = uVar36 >> 8;\n  if (param_3 == 4) {\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }\n  else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }\n  local_70 = 0x80000000;\n  local_68 = 0;\n  plVar3 = *(long **)(param_2 + 0x10);\n  local_78 = 0xffffffff00000000;\n  if (param_8 == (undefined8 *)0x0) {\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */\n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }\n  else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    /* try { // try from 002c4c4a to 002c54e2 has its CatchHandler @ 002c83b5 */\n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  if (*(int *)((long)param_8 + 0x4c) == -1) {\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c5256:\n  local_d0 = (uint *)&local_78;\n  uVar36 = (uint)uVar34;\n  if (((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')) {\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }\n  goto LAB_002c52f0;\nLAB_002c82c4:\n  FUN_00293370();\nLAB_002c82c9:\n  uVar36 = (uint)uVar34;\n  if ((char)puVar44 == '\0') {\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }\n  else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00291e90();\n    }\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar17;\n  bVar49 = (bool)((byte)local_98 & bVar48);\n  goto joined_r0x002c52d3;\nswitchD_002c4f87_caseD_9:\n  bVar48 = false;\nswitchD_002c5379_caseD_9:\n  if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }\n  if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8333;\n  puVar40 = param_8;\n  local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n  local_98._0_1_ = (byte)puVar40;\n  lVar30 = *(long *)(param_4 + 0x20);\n  if (lVar30 != 0) goto LAB_002c6206;\n  FUN_00290a70();\nLAB_002c6490:\n  uVar17 = (uint)(byte)local_98;\nLAB_002c64ab:\n  local_d0 = (uint *)&local_78;\n  local_68 = FUN_00298450();\n  bVar49 = uVar47 == 100;\n  puVar44 = (uint *)0x0;\n  if ((uVar36 & 0xf7) == 0x85) goto LAB_002c7a61;\n  local_e1 = true;\n  bVar48 = bVar49;\nLAB_002c64da:\n  local_d0 = (uint *)&local_78;\n  puVar44 = (uint *)0x0;\n  param_9 = local_d0;\n  goto LAB_002c4e43;\nLAB_002c7a61:\n  param_9 = local_d0;\n  local_e1 = true;\n  goto LAB_002c4e56;\n}" type_identifier (function_declarator "FUN_002c4b00(ulong *param_1,long param_2,int param_3,long param_4,undefined8 param_5,long param_6,\n            uint *param_7,undefined8 *param_8,uint *param_9,ulong *param_10,uint param_11)" identifier (parameter_list "(ulong *param_1,long param_2,int param_3,long param_4,undefined8 param_5,long param_6,\n            uint *param_7,undefined8 *param_8,uint *param_9,ulong *param_10,uint param_11)" ( (parameter_declaration "ulong *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "long param_2" (sized_type_specifier "long" long) identifier) , (parameter_declaration "int param_3" primitive_type identifier) , (parameter_declaration "long param_4" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined8 param_5" type_identifier identifier) , (parameter_declaration "long param_6" (sized_type_specifier "long" long) identifier) , (parameter_declaration "uint *param_7" type_identifier (pointer_declarator "*param_7" * identifier)) , (parameter_declaration "undefined8 *param_8" type_identifier (pointer_declarator "*param_8" * identifier)) , (parameter_declaration "uint *param_9" type_identifier (pointer_declarator "*param_9" * identifier)) , (parameter_declaration "ulong *param_10" type_identifier (pointer_declarator "*param_10" * identifier)) , (parameter_declaration "uint param_11" type_identifier identifier) ))) (compound_statement "{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  long *plVar3;\n  int *piVar4;\n  ulong uVar5;\n  uint *puVar6;\n  uint uVar7;\n  undefined1 *puVar8;\n  long *plVar9;\n  bool bVar10;\n  byte bVar11;\n  char cVar12;\n  char cVar13;\n  char cVar14;\n  ushort uVar15;\n  uint uVar16;\n  uint uVar17;\n  undefined4 uVar18;\n  uint uVar19;\n  int iVar20;\n  undefined8 uVar21;\n  undefined8 uVar22;\n  ulong uVar23;\n  long lVar24;\n  ulong uVar25;\n  long *plVar26;\n  long *plVar27;\n  long *plVar28;\n  ushort uVar29;\n  long lVar30;\n  int extraout_EDX;\n  uint uVar31;\n  uint uVar32;\n  long *plVar33;\n  ulong uVar34;\n  uint uVar35;\n  uint uVar36;\n  ulong *puVar37;\n  int iVar38;\n  byte *pbVar39;\n  undefined8 *puVar40;\n  byte *pbVar41;\n  char *pcVar42;\n  undefined8 uVar43;\n  uint *puVar44;\n  uint uVar45;\n  ulong uVar46;\n  uint uVar47;\n  bool bVar48;\n  bool bVar49;\n  bool bVar50;\n  bool bVar51;\n  byte bVar52;\n  uint local_130;\n  sbyte local_118;\n  undefined8 *local_108;\n  uint local_f4;\n  byte local_ec;\n  uint local_e8;\n  byte local_e3;\n  byte local_e2;\n  bool local_e1;\n  uint *local_d0;\n  uint local_c8;\n  uint local_c4;\n  uint local_c0;\n  uint local_b0;\n  undefined8 *local_98;\n  uint local_84;\n  uint auStack_80 [2];\n  undefined8 local_78;\n  undefined4 local_70;\n  uint local_68;\n  undefined1 *local_58 [2];\n  undefined1 auStack_48 [24];\n  \n  bVar52 = 0;\n  uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14);\n  uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24);\n  uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18);\n  uVar17 = *param_7;\n  uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar17 = param_7[1];\n  uVar47 = uVar17 >> 0x18;\n  uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar34 = (ulong)uVar36;\n  uVar7 = uVar36 >> 8;\n  if (param_3 == 4) {\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }\n  else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }\n  local_70 = 0x80000000;\n  local_68 = 0;\n  plVar3 = *(long **)(param_2 + 0x10);\n  local_78 = 0xffffffff00000000;\n  if (param_8 == (undefined8 *)0x0) {\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */\n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }\n  else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    /* try { // try from 002c4c4a to 002c54e2 has its CatchHandler @ 002c83b5 */\n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  if (*(int *)((long)param_8 + 0x4c) == -1) {\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c5256:\n  local_d0 = (uint *)&local_78;\n  uVar36 = (uint)uVar34;\n  if (((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')) {\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }\n  goto LAB_002c52f0;\nLAB_002c82c4:\n  FUN_00293370();\nLAB_002c82c9:\n  uVar36 = (uint)uVar34;\n  if ((char)puVar44 == '\0') {\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }\n  else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00291e90();\n    }\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar17;\n  bVar49 = (bool)((byte)local_98 & bVar48);\n  goto joined_r0x002c52d3;\nswitchD_002c4f87_caseD_9:\n  bVar48 = false;\nswitchD_002c5379_caseD_9:\n  if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }\n  if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8333;\n  puVar40 = param_8;\n  local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n  local_98._0_1_ = (byte)puVar40;\n  lVar30 = *(long *)(param_4 + 0x20);\n  if (lVar30 != 0) goto LAB_002c6206;\n  FUN_00290a70();\nLAB_002c6490:\n  uVar17 = (uint)(byte)local_98;\nLAB_002c64ab:\n  local_d0 = (uint *)&local_78;\n  local_68 = FUN_00298450();\n  bVar49 = uVar47 == 100;\n  puVar44 = (uint *)0x0;\n  if ((uVar36 & 0xf7) == 0x85) goto LAB_002c7a61;\n  local_e1 = true;\n  bVar48 = bVar49;\nLAB_002c64da:\n  local_d0 = (uint *)&local_78;\n  puVar44 = (uint *)0x0;\n  param_9 = local_d0;\n  goto LAB_002c4e43;\nLAB_002c7a61:\n  param_9 = local_d0;\n  local_e1 = true;\n  goto LAB_002c4e56;\n}" { (declaration "undefined4 uVar1;" type_identifier identifier ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "long *plVar3;" (sized_type_specifier "long" long) (pointer_declarator "*plVar3" * identifier) ;) (declaration "int *piVar4;" primitive_type (pointer_declarator "*piVar4" * identifier) ;) (declaration "ulong uVar5;" type_identifier identifier ;) (declaration "uint *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "undefined1 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "long *plVar9;" (sized_type_specifier "long" long) (pointer_declarator "*plVar9" * identifier) ;) (declaration "bool bVar10;" primitive_type identifier ;) (declaration "byte bVar11;" type_identifier identifier ;) (declaration "char cVar12;" primitive_type identifier ;) (declaration "char cVar13;" primitive_type identifier ;) (declaration "char cVar14;" primitive_type identifier ;) (declaration "ushort uVar15;" type_identifier identifier ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "undefined4 uVar18;" type_identifier identifier ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "int iVar20;" primitive_type identifier ;) (declaration "undefined8 uVar21;" type_identifier identifier ;) (declaration "undefined8 uVar22;" type_identifier identifier ;) (declaration "ulong uVar23;" type_identifier identifier ;) (declaration "long lVar24;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong uVar25;" type_identifier identifier ;) (declaration "long *plVar26;" (sized_type_specifier "long" long) (pointer_declarator "*plVar26" * identifier) ;) (declaration "long *plVar27;" (sized_type_specifier "long" long) (pointer_declarator "*plVar27" * identifier) ;) (declaration "long *plVar28;" (sized_type_specifier "long" long) (pointer_declarator "*plVar28" * identifier) ;) (declaration "ushort uVar29;" type_identifier identifier ;) (declaration "long lVar30;" (sized_type_specifier "long" long) identifier ;) (declaration "int extraout_EDX;" primitive_type identifier ;) (declaration "uint uVar31;" type_identifier identifier ;) (declaration "uint uVar32;" type_identifier identifier ;) (declaration "long *plVar33;" (sized_type_specifier "long" long) (pointer_declarator "*plVar33" * identifier) ;) (declaration "ulong uVar34;" type_identifier identifier ;) (declaration "uint uVar35;" type_identifier identifier ;) (declaration "uint uVar36;" type_identifier identifier ;) (declaration "ulong *puVar37;" type_identifier (pointer_declarator "*puVar37" * identifier) ;) (declaration "int iVar38;" primitive_type identifier ;) (declaration "byte *pbVar39;" type_identifier (pointer_declarator "*pbVar39" * identifier) ;) (declaration "undefined8 *puVar40;" type_identifier (pointer_declarator "*puVar40" * identifier) ;) (declaration "byte *pbVar41;" type_identifier (pointer_declarator "*pbVar41" * identifier) ;) (declaration "char *pcVar42;" primitive_type (pointer_declarator "*pcVar42" * identifier) ;) (declaration "undefined8 uVar43;" type_identifier identifier ;) (declaration "uint *puVar44;" type_identifier (pointer_declarator "*puVar44" * identifier) ;) (declaration "uint uVar45;" type_identifier identifier ;) (declaration "ulong uVar46;" type_identifier identifier ;) (declaration "uint uVar47;" type_identifier identifier ;) (declaration "bool bVar48;" primitive_type identifier ;) (declaration "bool bVar49;" primitive_type identifier ;) (declaration "bool bVar50;" primitive_type identifier ;) (declaration "bool bVar51;" primitive_type identifier ;) (declaration "byte bVar52;" type_identifier identifier ;) (declaration "uint local_130;" type_identifier identifier ;) (declaration "sbyte local_118;" type_identifier identifier ;) (declaration "undefined8 *local_108;" type_identifier (pointer_declarator "*local_108" * identifier) ;) (declaration "uint local_f4;" type_identifier identifier ;) (declaration "byte local_ec;" type_identifier identifier ;) (declaration "uint local_e8;" type_identifier identifier ;) (declaration "byte local_e3;" type_identifier identifier ;) (declaration "byte local_e2;" type_identifier identifier ;) (declaration "bool local_e1;" primitive_type identifier ;) (declaration "uint *local_d0;" type_identifier (pointer_declarator "*local_d0" * identifier) ;) (declaration "uint local_c8;" type_identifier identifier ;) (declaration "uint local_c4;" type_identifier identifier ;) (declaration "uint local_c0;" type_identifier identifier ;) (declaration "uint local_b0;" type_identifier identifier ;) (declaration "undefined8 *local_98;" type_identifier (pointer_declarator "*local_98" * identifier) ;) (declaration "uint local_84;" type_identifier identifier ;) (declaration "uint auStack_80 [2];" type_identifier (array_declarator "auStack_80 [2]" identifier [ number_literal ]) ;) (declaration "undefined8 local_78;" type_identifier identifier ;) (declaration "undefined4 local_70;" type_identifier identifier ;) (declaration "uint local_68;" type_identifier identifier ;) (declaration "undefined1 *local_58 [2];" type_identifier (pointer_declarator "*local_58 [2]" * (array_declarator "local_58 [2]" identifier [ number_literal ])) ;) (declaration "undefined1 auStack_48 [24];" type_identifier (array_declarator "auStack_48 [24]" identifier [ number_literal ]) ;) (expression_statement "bVar52 = 0;" (assignment_expression "bVar52 = 0" identifier = number_literal) ;) (expression_statement "uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14);" (assignment_expression "uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14)" identifier = (pointer_expression "*(uint *)(*(long *)(param_2 + 0x20) + 0x14)" * (cast_expression "(uint *)(*(long *)(param_2 + 0x20) + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x14)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x14" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24);" (assignment_expression "uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24)" identifier = (pointer_expression "*(uint *)(*(long *)(param_2 + 0x20) + 0x24)" * (cast_expression "(uint *)(*(long *)(param_2 + 0x20) + 0x24)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x24)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x24" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18);" (assignment_expression "uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18)" identifier = (binary_expression "(ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18)" (call_expression "(ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18)" ( (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal)) ))) / (call_expression "(ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18)" ( (binary_expression "uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18" (binary_expression "uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8" (binary_expression "uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8" (binary_expression "uVar47 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar47 & 0xff0000) >> 8" (parenthesized_expression "(uVar47 & 0xff0000)" ( (binary_expression "uVar47 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar47 & 0xff00) << 8" (parenthesized_expression "(uVar47 & 0xff00)" ( (binary_expression "uVar47 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar47 << 0x18" identifier << number_literal)) ))))) ;) (expression_statement "uVar17 = *param_7;" (assignment_expression "uVar17 = *param_7" identifier = (pointer_expression "*param_7" * identifier)) ;) (expression_statement "uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;" (assignment_expression "uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar17 = param_7[1];" (assignment_expression "uVar17 = param_7[1]" identifier = (subscript_expression "param_7[1]" identifier [ number_literal ])) ;) (expression_statement "uVar47 = uVar17 >> 0x18;" (assignment_expression "uVar47 = uVar17 >> 0x18" identifier = (binary_expression "uVar17 >> 0x18" identifier >> number_literal)) ;) (expression_statement "uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;" (assignment_expression "uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" identifier = (binary_expression "uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar47 | (uVar17 & 0xff0000) >> 8" identifier | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar34 = (ulong)uVar36;" (assignment_expression "uVar34 = (ulong)uVar36" identifier = (cast_expression "(ulong)uVar36" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar7 = uVar36 >> 8;" (assignment_expression "uVar7 = uVar36 >> 8" identifier = (binary_expression "uVar36 >> 8" identifier >> number_literal)) ;) (if_statement "if (param_3 == 4) {\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }\n  else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" if (parenthesized_expression "(param_3 == 4)" ( (binary_expression "param_3 == 4" identifier == number_literal) )) (compound_statement "{\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }" { (expression_statement "local_c4 = 0;" (assignment_expression "local_c4 = 0" identifier = number_literal) ;) (expression_statement "uVar16 = param_7[2];" (assignment_expression "uVar16 = param_7[2]" identifier = (subscript_expression "param_7[2]" identifier [ number_literal ])) ;) (expression_statement "local_b0 = 0xffffffff;" (assignment_expression "local_b0 = 0xffffffff" identifier = number_literal) ;) (expression_statement "local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;" (assignment_expression "local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" identifier = (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" ( (binary_expression "uVar16 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar16 & 0xff00) << 8" (parenthesized_expression "(uVar16 & 0xff00)" ( (binary_expression "uVar16 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar16 << 0x18" identifier << number_literal))) ;) (if_statement "if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }" if (parenthesized_expression "(param_6 + 1U < uVar23)" ( (binary_expression "param_6 + 1U < uVar23" (binary_expression "param_6 + 1U" identifier + number_literal) < identifier) )) (compound_statement "{\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }" { (expression_statement "uVar16 = param_7[3];" (assignment_expression "uVar16 = param_7[3]" identifier = (subscript_expression "param_7[3]" identifier [ number_literal ])) ;) (expression_statement "local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;" (assignment_expression "local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" identifier = (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" ( (binary_expression "uVar16 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar16 & 0xff00) << 8" (parenthesized_expression "(uVar16 & 0xff00)" ( (binary_expression "uVar16 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar16 << 0x18" identifier << number_literal))) ;) (expression_statement "local_c4 = param_7[4] >> 0x18;" (assignment_expression "local_c4 = param_7[4] >> 0x18" identifier = (binary_expression "param_7[4] >> 0x18" (subscript_expression "param_7[4]" identifier [ number_literal ]) >> number_literal)) ;) })) }) (else_clause "else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" else (if_statement "if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" if (parenthesized_expression "(param_6 + 1U < uVar23)" ( (binary_expression "param_6 + 1U < uVar23" (binary_expression "param_6 + 1U" identifier + number_literal) < identifier) )) (compound_statement "{\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }" { (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) (expression_statement "uVar16 = param_7[2];" (assignment_expression "uVar16 = param_7[2]" identifier = (subscript_expression "param_7[2]" identifier [ number_literal ])) ;) (expression_statement "local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;" (assignment_expression "local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" identifier = (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" ( (binary_expression "uVar16 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar16 & 0xff00) << 8" (parenthesized_expression "(uVar16 & 0xff00)" ( (binary_expression "uVar16 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar16 << 0x18" identifier << number_literal))) ;) (expression_statement "local_c4 = param_7[3] >> 0x18;" (assignment_expression "local_c4 = param_7[3] >> 0x18" identifier = (binary_expression "param_7[3] >> 0x18" (subscript_expression "param_7[3]" identifier [ number_literal ]) >> number_literal)) ;) }) (else_clause "else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" else (compound_statement "{\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" { (expression_statement "local_c4 = 0;" (assignment_expression "local_c4 = 0" identifier = number_literal) ;) (expression_statement "local_b0 = 0xffffffff;" (assignment_expression "local_b0 = 0xffffffff" identifier = number_literal) ;) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) }))))) (expression_statement "local_70 = 0x80000000;" (assignment_expression "local_70 = 0x80000000" identifier = number_literal) ;) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" identifier = number_literal) ;) (expression_statement "plVar3 = *(long **)(param_2 + 0x10);" (assignment_expression "plVar3 = *(long **)(param_2 + 0x10)" identifier = (pointer_expression "*(long **)(param_2 + 0x10)" * (cast_expression "(long **)(param_2 + 0x10)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "local_78 = 0xffffffff00000000;" (assignment_expression "local_78 = 0xffffffff00000000" identifier = number_literal) ;) (if_statement "if (param_8 == (undefined8 *)0x0) {\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */\n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }\n  else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    /* try { // try from 002c4c4a to 002c54e2 has its CatchHandler @ 002c83b5 */\n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */\n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }" { (if_statement "if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }" if (parenthesized_expression "(((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7)" ( (binary_expression "((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7" (binary_expression "((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46)" (parenthesized_expression "((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8)" ( (binary_expression "(ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8" (binary_expression "(ulong)*(uint *)(plVar3 + 0x48)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(plVar3 + 0x48)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 0x48)" ( (binary_expression "plVar3 + 0x48" identifier + number_literal) )))) + (binary_expression "(plVar3[0x47] - plVar3[0x45]) * 8" (parenthesized_expression "(plVar3[0x47] - plVar3[0x45])" ( (binary_expression "plVar3[0x47] - plVar3[0x45]" (subscript_expression "plVar3[0x47]" identifier [ number_literal ]) - (subscript_expression "plVar3[0x45]" identifier [ number_literal ])) )) * number_literal)) )) - (binary_expression "(ulong)*(uint *)(plVar3 + 0x46)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(plVar3 + 0x46)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 0x46)" ( (binary_expression "plVar3 + 0x46" identifier + number_literal) ))))) <= (cast_expression "(ulong)uVar7" ( (type_descriptor "ulong" type_identifier) ) identifier)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }" { comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16")" identifier (argument_list "("../../gold/mips.cc",0x65f,"local_symbol_is_mips16")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""local_symbol_is_mips16"" " string_content ") ))) ;) })) (expression_statement "local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);" (assignment_expression "local_ec = (byte)((uVar17 & 0xff0000) >> 0x10)" identifier = (call_expression "(byte)((uVar17 & 0xff0000) >> 0x10)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((uVar17 & 0xff0000) >> 0x10)" ( (binary_expression "(uVar17 & 0xff0000) >> 0x10" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal) )))) ;) (expression_statement "uVar25 = 1L << (local_ec & 0x3f);" (assignment_expression "uVar25 = 1L << (local_ec & 0x3f)" identifier = (binary_expression "1L << (local_ec & 0x3f)" number_literal << (parenthesized_expression "(local_ec & 0x3f)" ( (binary_expression "local_ec & 0x3f" identifier & number_literal) )))) ;) (expression_statement "uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);" (assignment_expression "uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8)" identifier = (pointer_expression "*(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8)" * (cast_expression "(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8)" ( (binary_expression "plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8" (subscript_expression "plVar3[0x45]" identifier [ number_literal ]) + (binary_expression "(ulong)(uVar36 >> 0xe) * 8" (call_expression "(ulong)(uVar36 >> 0xe)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar36 >> 0xe)" ( (binary_expression "uVar36 >> 0xe" identifier >> number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar46 = uVar25 & uVar23;" (assignment_expression "uVar46 = uVar25 & uVar23" identifier = (binary_expression "uVar25 & uVar23" identifier & identifier)) ;) (expression_statement "puVar44 = (uint *)(ulong)(uVar46 != 0);" (assignment_expression "puVar44 = (uint *)(ulong)(uVar46 != 0)" identifier = (cast_expression "(uint *)(ulong)(uVar46 != 0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(ulong)(uVar46 != 0)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar46 != 0)" ( (binary_expression "uVar46 != 0" identifier != number_literal) ))))) ;) (if_statement "if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }" if (parenthesized_expression "(((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7)" ( (binary_expression "((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7" (binary_expression "((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b)" (parenthesized_expression "((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8)" ( (binary_expression "(ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8" (binary_expression "(ulong)*(uint *)(plVar3 + 0x4d)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(plVar3 + 0x4d)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 0x4d)" ( (binary_expression "plVar3 + 0x4d" identifier + number_literal) )))) + (binary_expression "(plVar3[0x4c] - plVar3[0x4a]) * 8" (parenthesized_expression "(plVar3[0x4c] - plVar3[0x4a])" ( (binary_expression "plVar3[0x4c] - plVar3[0x4a]" (subscript_expression "plVar3[0x4c]" identifier [ number_literal ]) - (subscript_expression "plVar3[0x4a]" identifier [ number_literal ])) )) * number_literal)) )) - (binary_expression "(ulong)*(uint *)(plVar3 + 0x4b)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(plVar3 + 0x4b)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 0x4b)" ( (binary_expression "plVar3 + 0x4b" identifier + number_literal) ))))) <= (cast_expression "(ulong)uVar7" ( (type_descriptor "ulong" type_identifier) ) identifier)) )) (compound_statement "{\nLAB_002c821c:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }" { (labeled_statement "LAB_002c821c:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");" statement_identifier : comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips")" identifier (argument_list "("../../gold/mips.cc",0x668,"local_symbol_is_micromips")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""local_symbol_is_micromips"" " string_content ") ))) ;)) })) (expression_statement "uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);" (assignment_expression "uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8)" identifier = (pointer_expression "*(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8)" * (cast_expression "(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8)" ( (binary_expression "plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8" (subscript_expression "plVar3[0x4a]" identifier [ number_literal ]) + (binary_expression "(ulong)(uVar36 >> 0xe) * 8" (call_expression "(ulong)(uVar36 >> 0xe)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar36 >> 0xe)" ( (binary_expression "uVar36 >> 0xe" identifier >> number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar17 = (uint)((uVar25 & uVar5) != 0);" (assignment_expression "uVar17 = (uint)((uVar25 & uVar5) != 0)" identifier = (call_expression "(uint)((uVar25 & uVar5) != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uVar25 & uVar5) != 0)" ( (binary_expression "(uVar25 & uVar5) != 0" (parenthesized_expression "(uVar25 & uVar5)" ( (binary_expression "uVar25 & uVar5" identifier & identifier) )) != number_literal) )))) ;) (expression_statement "local_e1 = ((uVar23 | uVar5) & uVar25) != 0;" (assignment_expression "local_e1 = ((uVar23 | uVar5) & uVar25) != 0" identifier = (binary_expression "((uVar23 | uVar5) & uVar25) != 0" (parenthesized_expression "((uVar23 | uVar5) & uVar25)" ( (binary_expression "(uVar23 | uVar5) & uVar25" (parenthesized_expression "(uVar23 | uVar5)" ( (binary_expression "uVar23 | uVar5" identifier | identifier) )) & identifier) )) != number_literal)) ;) (if_statement "if (local_e1) {\n                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */\n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }" if (parenthesized_expression "(local_e1)" ( identifier )) (compound_statement "{\n                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */\n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }" { comment (expression_statement "local_68 = FUN_001d7270(param_9,plVar3,1);" (assignment_expression "local_68 = FUN_001d7270(param_9,plVar3,1)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,1)" identifier (argument_list "(param_9,plVar3,1)" ( identifier , identifier , number_literal )))) ;) (expression_statement "param_9 = (uint *)&local_78;" (assignment_expression "param_9 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;) })) (if_statement "if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }" if (parenthesized_expression "(uVar47 == 100)" ( (binary_expression "uVar47 == 100" identifier == number_literal) )) (compound_statement "{\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }" { (expression_statement "plVar33 = (long *)plVar3[0x69];" (assignment_expression "plVar33 = (long *)plVar3[0x69]" identifier = (cast_expression "(long *)plVar3[0x69]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar3[0x69]" identifier [ number_literal ]))) ;) (expression_statement "plVar9 = plVar3 + 0x68;" (assignment_expression "plVar9 = plVar3 + 0x68" identifier = (binary_expression "plVar3 + 0x68" identifier + number_literal)) ;) (expression_statement "plVar28 = plVar33;" (assignment_expression "plVar28 = plVar33" identifier = identifier) ;) (expression_statement "plVar27 = plVar9;" (assignment_expression "plVar27 = plVar9" identifier = identifier) ;) (if_statement "if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }" if (parenthesized_expression "(plVar33 != (long *)0x0)" ( (binary_expression "plVar33 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }" { (do_statement "do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);" do (compound_statement "{\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        }" { (if_statement "if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }" if (parenthesized_expression "(*(uint *)(plVar28 + 4) < uVar7)" ( (binary_expression "*(uint *)(plVar28 + 4) < uVar7" (pointer_expression "*(uint *)(plVar28 + 4)" * (cast_expression "(uint *)(plVar28 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar28 + 4)" ( (binary_expression "plVar28 + 4" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n            plVar26 = (long *)plVar28[3];\n          }" { (expression_statement "plVar26 = (long *)plVar28[3];" (assignment_expression "plVar26 = (long *)plVar28[3]" identifier = (cast_expression "(long *)plVar28[3]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar28[3]" identifier [ number_literal ]))) ;) }) (else_clause "else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }" else (compound_statement "{\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }" { (expression_statement "plVar26 = (long *)plVar28[2];" (assignment_expression "plVar26 = (long *)plVar28[2]" identifier = (cast_expression "(long *)plVar28[2]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar28[2]" identifier [ number_literal ]))) ;) (expression_statement "plVar27 = plVar28;" (assignment_expression "plVar27 = plVar28" identifier = identifier) ;) }))) (expression_statement "plVar28 = plVar26;" (assignment_expression "plVar28 = plVar26" identifier = identifier) ;) }) while (parenthesized_expression "(plVar26 != (long *)0x0)" ( (binary_expression "plVar26 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) (if_statement "if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }" if (parenthesized_expression "(((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0))" ( (binary_expression "((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)" (parenthesized_expression "((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7))" ( (binary_expression "(plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)" (parenthesized_expression "(plVar9 != plVar27)" ( (binary_expression "plVar9 != plVar27" identifier != identifier) )) && (parenthesized_expression "(*(uint *)(plVar27 + 4) <= uVar7)" ( (binary_expression "*(uint *)(plVar27 + 4) <= uVar7" (pointer_expression "*(uint *)(plVar27 + 4)" * (cast_expression "(uint *)(plVar27 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar27 + 4)" ( (binary_expression "plVar27 + 4" identifier + number_literal) )))) <= identifier) ))) )) && (parenthesized_expression "(plVar27[5] != 0)" ( (binary_expression "plVar27[5] != 0" (subscript_expression "plVar27[5]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }" { (expression_statement "plVar28 = plVar9;" (assignment_expression "plVar28 = plVar9" identifier = identifier) ;) (if_statement "if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }" if (parenthesized_expression "(uVar46 == 0)" ( (binary_expression "uVar46 == 0" identifier == number_literal) )) (compound_statement "{\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }" { (do_statement "do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);" do (compound_statement "{\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            }" { (expression_statement "plVar27 = plVar33;" (assignment_expression "plVar27 = plVar33" identifier = identifier) ;) (if_statement "if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }" if (parenthesized_expression "(*(uint *)(plVar27 + 4) < uVar7)" ( (binary_expression "*(uint *)(plVar27 + 4) < uVar7" (pointer_expression "*(uint *)(plVar27 + 4)" * (cast_expression "(uint *)(plVar27 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar27 + 4)" ( (binary_expression "plVar27 + 4" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }" { (expression_statement "plVar33 = (long *)plVar27[3];" (assignment_expression "plVar33 = (long *)plVar27[3]" identifier = (cast_expression "(long *)plVar27[3]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar27[3]" identifier [ number_literal ]))) ;) (expression_statement "plVar27 = plVar28;" (assignment_expression "plVar27 = plVar28" identifier = identifier) ;) }) (else_clause "else {\n                plVar33 = (long *)plVar27[2];\n              }" else (compound_statement "{\n                plVar33 = (long *)plVar27[2];\n              }" { (expression_statement "plVar33 = (long *)plVar27[2];" (assignment_expression "plVar33 = (long *)plVar27[2]" identifier = (cast_expression "(long *)plVar27[2]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar27[2]" identifier [ number_literal ]))) ;) }))) (expression_statement "plVar28 = plVar27;" (assignment_expression "plVar28 = plVar27" identifier = identifier) ;) }) while (parenthesized_expression "(plVar33 != (long *)0x0)" ( (binary_expression "plVar33 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) (expression_statement "lVar30 = 0;" (assignment_expression "lVar30 = 0" identifier = number_literal) ;) (if_statement "if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }" if (parenthesized_expression "((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7))" ( (binary_expression "(plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)" (parenthesized_expression "(plVar9 != plVar27)" ( (binary_expression "plVar9 != plVar27" identifier != identifier) )) && (parenthesized_expression "(*(uint *)(plVar27 + 4) <= uVar7)" ( (binary_expression "*(uint *)(plVar27 + 4) <= uVar7" (pointer_expression "*(uint *)(plVar27 + 4)" * (cast_expression "(uint *)(plVar27 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar27 + 4)" ( (binary_expression "plVar27 + 4" identifier + number_literal) )))) <= identifier) ))) )) (compound_statement "{\n              lVar30 = plVar27[5];\n            }" { (expression_statement "lVar30 = plVar27[5];" (assignment_expression "lVar30 = plVar27[5]" identifier = (subscript_expression "plVar27[5]" identifier [ number_literal ])) ;) })) (expression_statement "puVar44 = (uint *)0x0;" (assignment_expression "puVar44 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "cVar12 = '\0';" (assignment_expression "cVar12 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;) })) (expression_statement "puVar44 = (uint *)0x1;" (assignment_expression "puVar44 = (uint *)0x1" identifier = (cast_expression "(uint *)0x1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) })) (labeled_statement "LAB_002c56d8:\n      cVar12 = '\0';" statement_identifier : (expression_statement "cVar12 = '\0';" (assignment_expression "cVar12 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;)) (goto_statement "goto LAB_002c56df;" goto statement_identifier ;) })) (expression_statement "plVar9 = (long *)plVar3[99];" (assignment_expression "plVar9 = (long *)plVar3[99]" identifier = (cast_expression "(long *)plVar3[99]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar3[99]" identifier [ number_literal ]))) ;) (expression_statement "plVar33 = plVar3 + 0x62;" (assignment_expression "plVar33 = plVar3 + 0x62" identifier = (binary_expression "plVar3 + 0x62" identifier + number_literal)) ;) (if_statement "if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;" if (parenthesized_expression "((long *)plVar3[99] == (long *)0x0)" ( (binary_expression "(long *)plVar3[99] == (long *)0x0" (cast_expression "(long *)plVar3[99]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar3[99]" identifier [ number_literal ])) == (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_002c56d8;" goto statement_identifier ;)) (do_statement "do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);" do (compound_statement "{\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    }" { (while_statement "while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }" while (parenthesized_expression "(plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7)" ( (comma_expression "plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7" (assignment_expression "plVar28 = plVar9" identifier = identifier) , (binary_expression "*(uint *)(plVar28 + 4) < uVar7" (pointer_expression "*(uint *)(plVar28 + 4)" * (cast_expression "(uint *)(plVar28 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar28 + 4)" ( (binary_expression "plVar28 + 4" identifier + number_literal) )))) < identifier)) )) (compound_statement "{\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }" { (expression_statement "plVar27 = plVar28 + 3;" (assignment_expression "plVar27 = plVar28 + 3" identifier = (binary_expression "plVar28 + 3" identifier + number_literal)) ;) (expression_statement "plVar9 = (long *)*plVar27;" (assignment_expression "plVar9 = (long *)*plVar27" identifier = (cast_expression "(long *)*plVar27" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar27" * identifier))) ;) (expression_statement "plVar28 = plVar33;" (assignment_expression "plVar28 = plVar33" identifier = identifier) ;) (if_statement "if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;" if (parenthesized_expression "((long *)*plVar27 == (long *)0x0)" ( (binary_expression "(long *)*plVar27 == (long *)0x0" (cast_expression "(long *)*plVar27" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar27" * identifier)) == (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_002c66ba;" goto statement_identifier ;)) })) (expression_statement "plVar9 = (long *)plVar28[2];" (assignment_expression "plVar9 = (long *)plVar28[2]" identifier = (cast_expression "(long *)plVar28[2]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar28[2]" identifier [ number_literal ]))) ;) (expression_statement "plVar33 = plVar28;" (assignment_expression "plVar33 = plVar28" identifier = identifier) ;) }) while (parenthesized_expression "((long *)plVar28[2] != (long *)0x0)" ( (binary_expression "(long *)plVar28[2] != (long *)0x0" (cast_expression "(long *)plVar28[2]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar28[2]" identifier [ number_literal ])) != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) (labeled_statement "LAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;" statement_identifier : (if_statement "if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;" if (parenthesized_expression "(((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0))" ( (binary_expression "((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)" (parenthesized_expression "((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4)))" ( (binary_expression "(plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))" (parenthesized_expression "(plVar3 + 0x62 == plVar28)" ( (binary_expression "plVar3 + 0x62 == plVar28" (binary_expression "plVar3 + 0x62" identifier + number_literal) == identifier) )) || (parenthesized_expression "(uVar7 < *(uint *)(plVar28 + 4))" ( (binary_expression "uVar7 < *(uint *)(plVar28 + 4)" identifier < (pointer_expression "*(uint *)(plVar28 + 4)" * (cast_expression "(uint *)(plVar28 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar28 + 4)" ( (binary_expression "plVar28 + 4" identifier + number_literal) ))))) ))) )) || (parenthesized_expression "(cVar12 = '\0', plVar28[5] == 0)" ( (comma_expression "cVar12 = '\0', plVar28[5] == 0" (assignment_expression "cVar12 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "plVar28[5] == 0" (subscript_expression "plVar28[5]" identifier [ number_literal ]) == number_literal)) ))) )) (goto_statement "goto LAB_002c56d8;" goto statement_identifier ;))) (labeled_statement "LAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;" statement_identifier : (expression_statement "local_98._0_1_ = (byte)uVar17;" (assignment_expression "local_98._0_1_ = (byte)uVar17" (field_expression "local_98._0_1_" identifier . field_identifier) = (cast_expression "(byte)uVar17" ( (type_descriptor "byte" type_identifier) ) identifier)) ;)) (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;) (expression_statement "iVar38 = *(int *)(param_2 + 0x30);" (assignment_expression "iVar38 = *(int *)(param_2 + 0x30)" identifier = (pointer_expression "*(int *)(param_2 + 0x30)" * (cast_expression "(int *)(param_2 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x30)" ( (binary_expression "param_2 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "cVar13 = FUN_00297400(plVar3,iVar38);" (assignment_expression "cVar13 = FUN_00297400(plVar3,iVar38)" identifier = (call_expression "FUN_00297400(plVar3,iVar38)" identifier (argument_list "(plVar3,iVar38)" ( identifier , identifier )))) ;) (if_statement "if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }" if (parenthesized_expression "((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e]))" ( (binary_expression "(cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])" (parenthesized_expression "(cVar13 == '\0')" ( (binary_expression "cVar13 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar38 != (int)plVar3[0x7e])" ( (binary_expression "iVar38 != (int)plVar3[0x7e]" identifier != (cast_expression "(int)plVar3[0x7e]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar3[0x7e]" identifier [ number_literal ]))) ))) )) (compound_statement "{\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }" { (if_statement "if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }" { (expression_statement "lVar30 = plVar3[99];" (assignment_expression "lVar30 = plVar3[99]" identifier = (subscript_expression "plVar3[99]" identifier [ number_literal ])) ;) (if_statement "if (lVar30 == 0) goto LAB_002c64ab;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c64ab;" goto statement_identifier ;)) (do_statement "do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );" do (compound_statement "{\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        }" { (if_statement "if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }" if (parenthesized_expression "(*(uint *)(lVar30 + 0x20) < uVar7)" ( (binary_expression "*(uint *)(lVar30 + 0x20) < uVar7" (pointer_expression "*(uint *)(lVar30 + 0x20)" * (cast_expression "(uint *)(lVar30 + 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }" { (expression_statement "lVar30 = *(long *)(lVar30 + 0x18);" (assignment_expression "lVar30 = *(long *)(lVar30 + 0x18)" identifier = (pointer_expression "*(long *)(lVar30 + 0x18)" * (cast_expression "(long *)(lVar30 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x18)" ( (binary_expression "lVar30 + 0x18" identifier + number_literal) ))))) ;) }) (else_clause "else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }" else (compound_statement "{\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }" { (expression_statement "lVar30 = *(long *)(lVar30 + 0x10);" (assignment_expression "lVar30 = *(long *)(lVar30 + 0x10)" identifier = (pointer_expression "*(long *)(lVar30 + 0x10)" * (cast_expression "(long *)(lVar30 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x10)" ( (binary_expression "lVar30 + 0x10" identifier + number_literal) ))))) ;) }))) (if_statement "if (lVar30 == 0) goto LAB_002c6490;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c6490;" goto statement_identifier ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (if_statement "if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }" if (parenthesized_expression "(*(char *)(param_8 + 9) != '\0')" ( (binary_expression "*(char *)(param_8 + 9) != '\0'" (pointer_expression "*(char *)(param_8 + 9)" * (cast_expression "(char *)(param_8 + 9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 9)" ( (binary_expression "param_8 + 9" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }" { (if_statement "if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;" if (parenthesized_expression "(*(int *)((long)param_8 + 0x4c) == -1)" ( (binary_expression "*(int *)((long)param_8 + 0x4c) == -1" (pointer_expression "*(int *)((long)param_8 + 0x4c)" * (cast_expression "(int *)((long)param_8 + 0x4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x4c)" ( (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_002c64ab;" goto statement_identifier ;)) (expression_statement "lVar30 = *(long *)(param_4 + 0x98);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x98)" identifier = (pointer_expression "*(long *)(param_4 + 0x98)" * (cast_expression "(long *)(param_4 + 0x98)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x98)" ( (binary_expression "param_4 + 0x98" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }" { (expression_statement "local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);" (assignment_expression "local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1)" identifier = (cast_expression "(bool)(*(byte *)(lVar30 + 0x20) & 1)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )))) ;) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }" if (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) != 0)" ( (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) != 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }" { (expression_statement "bVar49 = uVar47 == 100;" (assignment_expression "bVar49 = uVar47 == 100" identifier = (binary_expression "uVar47 == 100" identifier == number_literal)) ;) (expression_statement "local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);" (assignment_expression "local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8)" identifier = (binary_expression "*(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8)" (pointer_expression "*(int *)((long)param_8 + 0x4c)" * (cast_expression "(int *)((long)param_8 + 0x4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x4c)" ( (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) + (pointer_expression "*(int *)(lVar30 + 8)" * (cast_expression "(int *)(lVar30 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) )))))) ;) (expression_statement "bVar52 = 0;" (assignment_expression "bVar52 = 0" identifier = number_literal) ;) (expression_statement "bVar48 = bVar49;" (assignment_expression "bVar48 = bVar49" identifier = identifier) ;) (if_statement "if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;" if (parenthesized_expression "((uVar47 & 0xf7) != 0x85)" ( (binary_expression "(uVar47 & 0xf7) != 0x85" (parenthesized_expression "(uVar47 & 0xf7)" ( (binary_expression "uVar47 & 0xf7" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_002c64da;" goto statement_identifier ;)) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) (goto_statement "goto LAB_002c5150;" goto statement_identifier ;) })) comment (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_00290a30();" (call_expression "FUN_00290a30()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_002c82c4;" goto statement_identifier ;) })) comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2d5f,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;) })) (if_statement "if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }" { (labeled_statement "LAB_002c56df:\n      bVar48 = uVar47 == 100;" statement_identifier : (expression_statement "bVar48 = uVar47 == 100;" (assignment_expression "bVar48 = uVar47 == 100" identifier = (binary_expression "uVar47 == 100" identifier == number_literal)) ;)) (goto_statement "goto LAB_002c4e20;" goto statement_identifier ;) })) }) (else_clause "else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    /* try { // try from 002c4c4a to 002c54e2 has its CatchHandler @ 002c83b5 */\n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }" else (compound_statement "{\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    /* try { // try from 002c4c4a to 002c54e2 has its CatchHandler @ 002c83b5 */\n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }" { (expression_statement "bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;" (assignment_expression "bVar11 = *(byte *)((long)param_8 + 0x39) >> 2" identifier = (binary_expression "*(byte *)((long)param_8 + 0x39) >> 2" (pointer_expression "*(byte *)((long)param_8 + 0x39)" * (cast_expression "(byte *)((long)param_8 + 0x39)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x39)" ( (binary_expression "(long)param_8 + 0x39" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) >> number_literal)) ;) (expression_statement "bVar48 = (bVar11 & 0x3c) == 0x3c;" (assignment_expression "bVar48 = (bVar11 & 0x3c) == 0x3c" identifier = (binary_expression "(bVar11 & 0x3c) == 0x3c" (parenthesized_expression "(bVar11 & 0x3c)" ( (binary_expression "bVar11 & 0x3c" identifier & number_literal) )) == number_literal)) ;) (expression_statement "puVar44 = (uint *)(ulong)bVar48;" (assignment_expression "puVar44 = (uint *)(ulong)bVar48" identifier = (cast_expression "(uint *)(ulong)bVar48" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)bVar48" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "bVar49 = (bVar11 & 0x30) == 0x20;" (assignment_expression "bVar49 = (bVar11 & 0x30) == 0x20" identifier = (binary_expression "(bVar11 & 0x30) == 0x20" (parenthesized_expression "(bVar11 & 0x30)" ( (binary_expression "bVar11 & 0x30" identifier & number_literal) )) == number_literal)) ;) (expression_statement "uVar17 = (uint)bVar49;" (assignment_expression "uVar17 = (uint)bVar49" identifier = (cast_expression "(uint)bVar49" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_e1 = bVar49 || bVar48;" (assignment_expression "local_e1 = bVar49 || bVar48" identifier = (binary_expression "bVar49 || bVar48" identifier || identifier)) ;) (if_statement "if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }" if (parenthesized_expression "((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0))" ( (binary_expression "(bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)" (parenthesized_expression "(bVar49 || bVar48)" ( (binary_expression "bVar49 || bVar48" identifier || identifier) )) && (parenthesized_expression "(iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)" ( (comma_expression "iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,0)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,0)" identifier (argument_list "(param_9,plVar3,0)" ( identifier , identifier , number_literal )))) , (binary_expression "iVar38 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }" { (expression_statement "local_68 = FUN_001d7270(param_9,plVar3,0);" (assignment_expression "local_68 = FUN_001d7270(param_9,plVar3,0)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,0)" identifier (argument_list "(param_9,plVar3,0)" ( identifier , identifier , number_literal )))) ;) (expression_statement "local_68 = local_68 | 1;" (assignment_expression "local_68 = local_68 | 1" identifier = (binary_expression "local_68 | 1" identifier | number_literal)) ;) (expression_statement "param_9 = (uint *)&local_78;" (assignment_expression "param_9 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;) }) (else_clause "else {\n      local_e1 = false;\n    }" else (compound_statement "{\n      local_e1 = false;\n    }" { (expression_statement "local_e1 = false;" (assignment_expression "local_e1 = false" identifier = false) ;) }))) (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;) (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) (if_statement "if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }" if (parenthesized_expression "(uVar47 - 1 < 0xf9)" ( (binary_expression "uVar47 - 1 < 0xf9" (binary_expression "uVar47 - 1" identifier - number_literal) < number_literal) )) (compound_statement "{\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }" { (expression_statement "iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];" (assignment_expression "iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1]" identifier = (cast_expression "(int)(char)(&DAT_0055e3e0)[uVar47 - 1]" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)(&DAT_0055e3e0)[uVar47 - 1]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "(&DAT_0055e3e0)[uVar47 - 1]" (parenthesized_expression "(&DAT_0055e3e0)" ( (pointer_expression "&DAT_0055e3e0" & identifier) )) [ (binary_expression "uVar47 - 1" identifier - number_literal) ])))) ;) })) comment (expression_statement "cVar12 = FUN_00228fa0(param_8,iVar38);" (assignment_expression "cVar12 = FUN_00228fa0(param_8,iVar38)" identifier = (call_expression "FUN_00228fa0(param_8,iVar38)" identifier (argument_list "(param_8,iVar38)" ( identifier , identifier )))) ;) (if_statement "if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }" if (parenthesized_expression "(cVar12 == '\0')" ( (binary_expression "cVar12 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }" { (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "bVar50 = *(char *)((long)param_8 + 0x65) == '\0';" (assignment_expression "bVar50 = *(char *)((long)param_8 + 0x65) == '\0'" identifier = (binary_expression "*(char *)((long)param_8 + 0x65) == '\0'" (pointer_expression "*(char *)((long)param_8 + 0x65)" * (cast_expression "(char *)((long)param_8 + 0x65)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x65)" ( (binary_expression "(long)param_8 + 0x65" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence '))) ;) (if_statement "if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }" if (parenthesized_expression "(!bVar50)" ( (unary_expression "!bVar50" ! identifier) )) (compound_statement "{\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }" { (labeled_statement "LAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0xb8);" (assignment_expression "lVar30 = *(long *)(param_4 + 0xb8)" identifier = (pointer_expression "*(long *)(param_4 + 0xb8)" * (cast_expression "(long *)(param_4 + 0xb8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0xb8)" ( (binary_expression "param_4 + 0xb8" identifier + number_literal) ))))) ;)) (if_statement "if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }" { (expression_statement "FUN_00290a10();" (call_expression "FUN_00290a10()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_002c81eb:\n          FUN_00290a50();" statement_identifier : (expression_statement "FUN_00290a50();" (call_expression "FUN_00290a50()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c81f0:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");" statement_identifier : comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2e88,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;)) })) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }" if (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) == 0)" ( (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) == 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }" { comment (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));" (assignment_expression "bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8))" identifier = (call_expression "CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8))" identifier (argument_list "(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8))" ( (pointer_expression "*(uint *)((long)param_8 + 0x54)" * (cast_expression "(uint *)((long)param_8 + 0x54)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x54)" ( (binary_expression "(long)param_8 + 0x54" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) , (pointer_expression "*(uint *)(lVar30 + 8)" * (cast_expression "(uint *)(lVar30 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) )))) )))) ;) (expression_statement "uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);" (assignment_expression "uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8)" identifier = (binary_expression "*(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8)" (pointer_expression "*(uint *)((long)param_8 + 0x54)" * (cast_expression "(uint *)((long)param_8 + 0x54)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x54)" ( (binary_expression "(long)param_8 + 0x54" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) + (pointer_expression "*(uint *)(lVar30 + 8)" * (cast_expression "(uint *)(lVar30 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) )))))) ;) (expression_statement "bVar50 = uVar16 == 0;" (assignment_expression "bVar50 = uVar16 == 0" identifier = (binary_expression "uVar16 == 0" identifier == number_literal)) ;) (goto_statement "goto LAB_002c4c88;" goto statement_identifier ;) })) }) (else_clause "else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }" else (compound_statement "{\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }" { (if_statement "if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;" if (parenthesized_expression "(*(char *)((long)param_8 + 0x65) != '\0')" ( (binary_expression "*(char *)((long)param_8 + 0x65) != '\0'" (pointer_expression "*(char *)((long)param_8 + 0x65)" * (cast_expression "(char *)((long)param_8 + 0x65)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x65)" ( (binary_expression "(long)param_8 + 0x65" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c4c60;" goto statement_identifier ;)) (expression_statement "lVar30 = *(long *)(param_4 + 0x30);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x30)" identifier = (pointer_expression "*(long *)(param_4 + 0x30)" * (cast_expression "(long *)(param_4 + 0x30)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x30)" ( (binary_expression "param_4 + 0x30" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }" if (parenthesized_expression "(*(int *)(param_8 + 0xd) == -1)" ( (binary_expression "*(int *)(param_8 + 0xd) == -1" (pointer_expression "*(int *)(param_8 + 0xd)" * (cast_expression "(int *)(param_8 + 0xd)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 0xd)" ( (binary_expression "param_8 + 0xd" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }" { (if_statement "if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }" { (labeled_statement "LAB_002c8217:\n          FUN_00290a50();" statement_identifier : (expression_statement "FUN_00290a50();" (call_expression "FUN_00290a50()" identifier (argument_list "()" ( ))) ;)) (goto_statement "goto LAB_002c821c;" goto statement_identifier ;) })) (if_statement "if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }" if (parenthesized_expression "(*(int *)((long)param_8 + 0x6c) == -1)" ( (binary_expression "*(int *)((long)param_8 + 0x6c) == -1" (pointer_expression "*(int *)((long)param_8 + 0x6c)" * (cast_expression "(int *)((long)param_8 + 0x6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x6c)" ( (binary_expression "(long)param_8 + 0x6c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }" { comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address")" identifier (argument_list "("../../gold/mips.cc",0x9ed,"comp_entry_address")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""comp_entry_address"" " string_content ") ))) ;) })) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }" if (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) == 0)" ( (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) == 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }" { comment (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "bVar11 = *(byte *)(param_4 + 0x14);" (assignment_expression "bVar11 = *(byte *)(param_4 + 0x14)" identifier = (pointer_expression "*(byte *)(param_4 + 0x14)" * (cast_expression "(byte *)(param_4 + 0x14)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x14)" ( (binary_expression "param_4 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);" (assignment_expression "uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8)" identifier = (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1" (pointer_expression "*(int *)((long)param_8 + 0x6c)" * (cast_expression "(int *)((long)param_8 + 0x6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x6c)" ( (binary_expression "(long)param_8 + 0x6c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) + number_literal) + (pointer_expression "*(int *)(lVar30 + 0x68)" * (cast_expression "(int *)(lVar30 + 0x68)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x68)" ( (binary_expression "lVar30 + 0x68" identifier + number_literal) ))))) + (pointer_expression "*(int *)(lVar30 + 0x60)" * (cast_expression "(int *)(lVar30 + 0x60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x60)" ( (binary_expression "lVar30 + 0x60" identifier + number_literal) ))))) + (pointer_expression "*(int *)(lVar30 + 8)" * (cast_expression "(int *)(lVar30 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) )))))) ;) (if_statement "if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }" if (parenthesized_expression "(bVar11 == 0)" ( (binary_expression "bVar11 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }" { (expression_statement "FUN_00290d80();" (call_expression "FUN_00290d80()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_002c832e:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8333:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8338:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c833d:\n          FUN_00290a50();" statement_identifier : (expression_statement "FUN_00290a50();" (call_expression "FUN_00290a50()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8342:\n          FUN_00290e30();" statement_identifier : (expression_statement "FUN_00290e30();" (call_expression "FUN_00290e30()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");" statement_identifier : comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset")" identifier (argument_list "("../../gold/mips.cc",0x895,"get_primary_got_offset")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""get_primary_got_offset"" " string_content ") ))) ;)) })) (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;" (assignment_expression "bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0" identifier = (binary_expression "(*(uint *)(param_4 + 0x10) & 0x2000000) == 0" (parenthesized_expression "(*(uint *)(param_4 + 0x10) & 0x2000000)" ( (binary_expression "*(uint *)(param_4 + 0x10) & 0x2000000" (pointer_expression "*(uint *)(param_4 + 0x10)" * (cast_expression "(uint *)(param_4 + 0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x10)" ( (binary_expression "param_4 + 0x10" identifier + number_literal) )))) & number_literal) )) == number_literal)) ;) (if_statement "if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }" if (parenthesized_expression "(bVar50)" ( identifier )) (compound_statement "{\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }" { (expression_statement "puVar44 = (uint *)(ulong)bVar11;" (assignment_expression "puVar44 = (uint *)(ulong)bVar11" identifier = (cast_expression "(uint *)(ulong)bVar11" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)bVar11" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "bVar11 = bVar49;" (assignment_expression "bVar11 = bVar49" identifier = identifier) ;) })) (expression_statement "uVar17 = (uint)bVar11;" (assignment_expression "uVar17 = (uint)bVar11" identifier = (cast_expression "(uint)bVar11" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) }) (else_clause "else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }" else (compound_statement "{\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }" { (if_statement "if (lVar30 == 0) goto LAB_002c81eb;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c81eb;" goto statement_identifier ;)) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }" if (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) == 0)" ( (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) == 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          FUN_00291e90();\n        }" { comment (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);" (assignment_expression "uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8)" identifier = (binary_expression "*(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8)" (pointer_expression "*(int *)(param_8 + 0xd)" * (cast_expression "(int *)(param_8 + 0xd)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 0xd)" ( (binary_expression "param_8 + 0xd" identifier + number_literal) )))) + (pointer_expression "*(int *)(lVar30 + 8)" * (cast_expression "(int *)(lVar30 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) )))))) ;) (expression_statement "puVar44 = (uint *)0x0;" (assignment_expression "puVar44 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));" (assignment_expression "bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68))" identifier = (call_expression "CARRY4(uVar16,*(uint *)(lVar30 + 0x68))" identifier (argument_list "(uVar16,*(uint *)(lVar30 + 0x68))" ( identifier , (pointer_expression "*(uint *)(lVar30 + 0x68)" * (cast_expression "(uint *)(lVar30 + 0x68)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x68)" ( (binary_expression "lVar30 + 0x68" identifier + number_literal) )))) )))) ;) (expression_statement "uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);" (assignment_expression "uVar16 = uVar16 + *(uint *)(lVar30 + 0x68)" identifier = (binary_expression "uVar16 + *(uint *)(lVar30 + 0x68)" identifier + (pointer_expression "*(uint *)(lVar30 + 0x68)" * (cast_expression "(uint *)(lVar30 + 0x68)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x68)" ( (binary_expression "lVar30 + 0x68" identifier + number_literal) )))))) ;) (expression_statement "bVar50 = uVar16 == 0;" (assignment_expression "bVar50 = uVar16 == 0" identifier = (binary_expression "uVar16 == 0" identifier == number_literal)) ;) (expression_statement "uVar17 = 0;" (assignment_expression "uVar17 = 0" identifier = number_literal) ;) }))) (labeled_statement "LAB_002c4c88:\n      local_68 = uVar16;" statement_identifier : (expression_statement "local_68 = uVar16;" (assignment_expression "local_68 = uVar16" identifier = identifier) ;)) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) }))) (expression_statement "lVar30 = 9;" (assignment_expression "lVar30 = 9" identifier = number_literal) ;) (expression_statement "pbVar39 = (byte *)*param_8;" (assignment_expression "pbVar39 = (byte *)*param_8" identifier = (cast_expression "(byte *)*param_8" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_8" * identifier))) ;) (expression_statement "pbVar41 = (byte *)"_gp_disp";" (assignment_expression "pbVar41 = (byte *)"_gp_disp"" identifier = (cast_expression "(byte *)"_gp_disp"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""_gp_disp"" " string_content "))) ;) (do_statement "do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);" do (compound_statement "{\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    }" { (if_statement "if (lVar30 == 0) break;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar30 = lVar30 + -1;" (assignment_expression "lVar30 = lVar30 + -1" identifier = (binary_expression "lVar30 + -1" identifier + number_literal)) ;) (expression_statement "bVar48 = *pbVar39 < *pbVar41;" (assignment_expression "bVar48 = *pbVar39 < *pbVar41" identifier = (binary_expression "*pbVar39 < *pbVar41" (pointer_expression "*pbVar39" * identifier) < (pointer_expression "*pbVar41" * identifier))) ;) (expression_statement "bVar50 = *pbVar39 == *pbVar41;" (assignment_expression "bVar50 = *pbVar39 == *pbVar41" identifier = (binary_expression "*pbVar39 == *pbVar41" (pointer_expression "*pbVar39" * identifier) == (pointer_expression "*pbVar41" * identifier))) ;) (expression_statement "pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;" (assignment_expression "pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1" identifier = (binary_expression "pbVar39 + (ulong)bVar52 * -2 + 1" (binary_expression "pbVar39 + (ulong)bVar52 * -2" identifier + (binary_expression "(ulong)bVar52 * -2" (cast_expression "(ulong)bVar52" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;" (assignment_expression "pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1" identifier = (binary_expression "pbVar41 + (ulong)bVar52 * -2 + 1" (binary_expression "pbVar41 + (ulong)bVar52 * -2" identifier + (binary_expression "(ulong)bVar52 * -2" (cast_expression "(ulong)bVar52" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar50)" ( identifier )) ;) (expression_statement "lVar30 = 0xf;" (assignment_expression "lVar30 = 0xf" identifier = number_literal) ;) (expression_statement "bVar49 = !bVar48 && !bVar50;" (assignment_expression "bVar49 = !bVar48 && !bVar50" identifier = (binary_expression "!bVar48 && !bVar50" (unary_expression "!bVar48" ! identifier) && (unary_expression "!bVar50" ! identifier))) ;) (expression_statement "bVar50 = bVar49 < bVar48;" (assignment_expression "bVar50 = bVar49 < bVar48" identifier = (binary_expression "bVar49 < bVar48" identifier < identifier)) ;) (expression_statement "bVar51 = bVar49 == bVar48;" (assignment_expression "bVar51 = bVar49 == bVar48" identifier = (binary_expression "bVar49 == bVar48" identifier == identifier)) ;) (expression_statement "pbVar39 = (byte *)*param_8;" (assignment_expression "pbVar39 = (byte *)*param_8" identifier = (cast_expression "(byte *)*param_8" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_8" * identifier))) ;) (expression_statement "pbVar41 = (byte *)"__gnu_local_gp";" (assignment_expression "pbVar41 = (byte *)"__gnu_local_gp"" identifier = (cast_expression "(byte *)"__gnu_local_gp"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""__gnu_local_gp"" " string_content "))) ;) (do_statement "do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);" do (compound_statement "{\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    }" { (if_statement "if (lVar30 == 0) break;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar30 = lVar30 + -1;" (assignment_expression "lVar30 = lVar30 + -1" identifier = (binary_expression "lVar30 + -1" identifier + number_literal)) ;) (expression_statement "bVar50 = *pbVar39 < *pbVar41;" (assignment_expression "bVar50 = *pbVar39 < *pbVar41" identifier = (binary_expression "*pbVar39 < *pbVar41" (pointer_expression "*pbVar39" * identifier) < (pointer_expression "*pbVar41" * identifier))) ;) (expression_statement "bVar51 = *pbVar39 == *pbVar41;" (assignment_expression "bVar51 = *pbVar39 == *pbVar41" identifier = (binary_expression "*pbVar39 == *pbVar41" (pointer_expression "*pbVar39" * identifier) == (pointer_expression "*pbVar41" * identifier))) ;) (expression_statement "pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;" (assignment_expression "pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1" identifier = (binary_expression "pbVar39 + (ulong)bVar52 * -2 + 1" (binary_expression "pbVar39 + (ulong)bVar52 * -2" identifier + (binary_expression "(ulong)bVar52 * -2" (cast_expression "(ulong)bVar52" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;" (assignment_expression "pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1" identifier = (binary_expression "pbVar41 + (ulong)bVar52 * -2 + 1" (binary_expression "pbVar41 + (ulong)bVar52 * -2" identifier + (binary_expression "(ulong)bVar52 * -2" (cast_expression "(ulong)bVar52" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar51)" ( identifier )) ;) (if_statement "if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }" if (parenthesized_expression "(bVar49 == bVar48)" ( (binary_expression "bVar49 == bVar48" identifier == identifier) )) (compound_statement "{\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }" { (expression_statement "bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;" (assignment_expression "bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1" identifier = (binary_expression "*(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1" (binary_expression "*(byte *)((long)plVar3 + 0x36c) >> 1 & 1" (binary_expression "*(byte *)((long)plVar3 + 0x36c) >> 1" (pointer_expression "*(byte *)((long)plVar3 + 0x36c)" * (cast_expression "(byte *)((long)plVar3 + 0x36c)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)plVar3 + 0x36c)" ( (binary_expression "(long)plVar3 + 0x36c" (cast_expression "(long)plVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) >> number_literal) & number_literal) ^ number_literal)) ;) (if_statement "if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;" if (parenthesized_expression "((!bVar50 && !bVar51) == bVar50)" ( (binary_expression "(!bVar50 && !bVar51) == bVar50" (parenthesized_expression "(!bVar50 && !bVar51)" ( (binary_expression "!bVar50 && !bVar51" (unary_expression "!bVar50" ! identifier) && (unary_expression "!bVar51" ! identifier)) )) == identifier) )) (compound_statement "{\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }" { (if_statement "if (bVar52 == 0) goto LAB_002c51e0;" if (parenthesized_expression "(bVar52 == 0)" ( (binary_expression "bVar52 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c51e0;" goto statement_identifier ;)) }) (else_clause "else if (bVar52 == 0) goto LAB_002c5078;" else (if_statement "if (bVar52 == 0) goto LAB_002c5078;" if (parenthesized_expression "(bVar52 == 0)" ( (binary_expression "bVar52 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c5078;" goto statement_identifier ;)))) (if_statement "if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }" if (parenthesized_expression "(((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))" ( (binary_expression "((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40)))" (parenthesized_expression "((1 < uVar47 - 0x68) && (1 < uVar47 - 5))" ( (binary_expression "(1 < uVar47 - 0x68) && (1 < uVar47 - 5)" (parenthesized_expression "(1 < uVar47 - 0x68)" ( (binary_expression "1 < uVar47 - 0x68" number_literal < (binary_expression "uVar47 - 0x68" identifier - number_literal)) )) && (parenthesized_expression "(1 < uVar47 - 5)" ( (binary_expression "1 < uVar47 - 5" number_literal < (binary_expression "uVar47 - 5" identifier - number_literal)) ))) )) && (parenthesized_expression "((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40)))" ( (parenthesized_expression "(1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))" ( (binary_expression "1 < uVar47 - 0x86 && (1 < uVar47 - 0x40)" (binary_expression "1 < uVar47 - 0x86" number_literal < (binary_expression "uVar47 - 0x86" identifier - number_literal)) && (parenthesized_expression "(1 < uVar47 - 0x40)" ( (binary_expression "1 < uVar47 - 0x40" number_literal < (binary_expression "uVar47 - 0x40" identifier - number_literal)) ))) )) ))) )) (compound_statement "{\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }" { (expression_statement "uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );" (assignment_expression "uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        )" identifier = (call_expression "gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        )" identifier (argument_list "(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        )" ( (string_literal ""relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."" " string_content ") )))) ;) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21)" identifier (argument_list "(param_2,param_6,uVar35,uVar21)" ( identifier , identifier , identifier , identifier ))) ;) })) (expression_statement "cVar12 = '\x01';" (assignment_expression "cVar12 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }) (else_clause "else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }" else (compound_statement "{\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }" { (if_statement "if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }" if (parenthesized_expression "((!bVar50 && !bVar51) == bVar50)" ( (binary_expression "(!bVar50 && !bVar51) == bVar50" (parenthesized_expression "(!bVar50 && !bVar51)" ( (binary_expression "!bVar50 && !bVar51" (unary_expression "!bVar50" ! identifier) && (unary_expression "!bVar51" ! identifier)) )) == identifier) )) (compound_statement "{\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }" { (labeled_statement "LAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" statement_identifier : (if_statement "if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" if (parenthesized_expression "(*(long *)(param_4 + 0x28) == 0)" ( (binary_expression "*(long *)(param_4 + 0x28) == 0" (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          local_68 = 0;\n        }" { (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" identifier = number_literal) ;) }) (else_clause "else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" else (compound_statement "{\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" { (expression_statement "local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);" (assignment_expression "local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40)" identifier = (pointer_expression "*(uint *)(*(long *)(param_4 + 0x28) + 0x40)" * (cast_expression "(uint *)(*(long *)(param_4 + 0x28) + 0x40)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x28) + 0x40)" ( (binary_expression "*(long *)(param_4 + 0x28) + 0x40" (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) )))) + number_literal) ))))) ;) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" if (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" ( (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" ( (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" ( (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" * (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" ( (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(plVar3[0x6e] != 0)" ( (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" { (expression_statement "local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c)" identifier = (binary_expression "local_68 + *(int *)(plVar3[0x6e] + 0x10c)" identifier + (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" * (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x6e] + 0x10c)" ( (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) + number_literal) )))))) ;) })) })))) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) })) (labeled_statement "LAB_002c5078:\n      cVar12 = '\0';" statement_identifier : (expression_statement "cVar12 = '\0';" (assignment_expression "cVar12 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;)) }))) (if_statement "if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }" if (parenthesized_expression "(uVar47 == 100)" ( (binary_expression "uVar47 == 100" identifier == number_literal) )) (compound_statement "{\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }" { (expression_statement "lVar24 = param_8[0xf];" (assignment_expression "lVar24 = param_8[0xf]" identifier = (subscript_expression "param_8[0xf]" identifier [ number_literal ])) ;) (if_statement "if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }" if (parenthesized_expression "(lVar24 == 0)" ( (binary_expression "lVar24 == 0" identifier == number_literal) )) (compound_statement "{\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }" { (if_statement "if (param_8[0x10] == 0) goto LAB_002c4d83;" if (parenthesized_expression "(param_8[0x10] == 0)" ( (binary_expression "param_8[0x10] == 0" (subscript_expression "param_8[0x10]" identifier [ number_literal ]) == number_literal) )) (goto_statement "goto LAB_002c4d83;" goto statement_identifier ;)) (if_statement "if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;" if (parenthesized_expression "(*(int *)((long)param_8 + 0x24) == -1)" ( (binary_expression "*(int *)((long)param_8 + 0x24) == -1" (pointer_expression "*(int *)((long)param_8 + 0x24)" * (cast_expression "(int *)((long)param_8 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x24)" ( (binary_expression "(long)param_8 + 0x24" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_002c82c9;" goto statement_identifier ;)) (goto_statement "goto LAB_002c5869;" goto statement_identifier ;) })) (if_statement "if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;" if (parenthesized_expression "((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0'))" ( (binary_expression "(*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')" (parenthesized_expression "(*(int *)((long)param_8 + 0x24) == -1)" ( (binary_expression "*(int *)((long)param_8 + 0x24) == -1" (pointer_expression "*(int *)((long)param_8 + 0x24)" * (cast_expression "(int *)((long)param_8 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x24)" ( (binary_expression "(long)param_8 + 0x24" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) && (parenthesized_expression "((char)puVar44 != '\0')" ( (binary_expression "(char)puVar44 != '\0'" (cast_expression "(char)puVar44" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_002c4d83;" goto statement_identifier ;)) (expression_statement "lVar30 = lVar24;" (assignment_expression "lVar30 = lVar24" identifier = identifier) ;) (if_statement "if (param_8[0x10] == 0) goto LAB_002c5870;" if (parenthesized_expression "(param_8[0x10] == 0)" ( (binary_expression "param_8[0x10] == 0" (subscript_expression "param_8[0x10]" identifier [ number_literal ]) == number_literal) )) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;)) (if_statement "if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;" if (parenthesized_expression "(*(uint *)(plVar3 + 7) < 2)" ( (binary_expression "*(uint *)(plVar3 + 7) < 2" (pointer_expression "*(uint *)(plVar3 + 7)" * (cast_expression "(uint *)(plVar3 + 7)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 7)" ( (binary_expression "plVar3 + 7" identifier + number_literal) )))) < number_literal) )) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;)) (expression_statement "uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);" (assignment_expression "uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a)" identifier = (binary_expression "((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a)" (parenthesized_expression "((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8)" ( (binary_expression "(ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8" (binary_expression "(ulong)*(uint *)(plVar3 + 0x7c)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(plVar3 + 0x7c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 0x7c)" ( (binary_expression "plVar3 + 0x7c" identifier + number_literal) )))) + (binary_expression "(plVar3[0x7b] - plVar3[0x79]) * 8" (parenthesized_expression "(plVar3[0x7b] - plVar3[0x79])" ( (binary_expression "plVar3[0x7b] - plVar3[0x79]" (subscript_expression "plVar3[0x7b]" identifier [ number_literal ]) - (subscript_expression "plVar3[0x79]" identifier [ number_literal ])) )) * number_literal)) )) - (binary_expression "(ulong)*(uint *)(plVar3 + 0x7a)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(plVar3 + 0x7a)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 0x7a)" ( (binary_expression "plVar3 + 0x7a" identifier + number_literal) )))))) ;) (if_statement "if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }" if (parenthesized_expression "(1 < uVar34)" ( (binary_expression "1 < uVar34" number_literal < identifier) )) (compound_statement "{\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }" { (expression_statement "uVar23 = 1;" (assignment_expression "uVar23 = 1" identifier = number_literal) ;) (do_statement "do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);" do (compound_statement "{\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        }" { (expression_statement "lVar30 = param_8[0x10];" (assignment_expression "lVar30 = param_8[0x10]" identifier = (subscript_expression "param_8[0x10]" identifier [ number_literal ])) ;) (if_statement "if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;" if (parenthesized_expression "((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)" ( (binary_expression "(*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0" (parenthesized_expression "(*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f))" ( (binary_expression "*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)" (pointer_expression "*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8)" * (cast_expression "(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x79] + (uVar23 >> 6) * 8)" ( (binary_expression "plVar3[0x79] + (uVar23 >> 6) * 8" (subscript_expression "plVar3[0x79]" identifier [ number_literal ]) + (binary_expression "(uVar23 >> 6) * 8" (parenthesized_expression "(uVar23 >> 6)" ( (binary_expression "uVar23 >> 6" identifier >> number_literal) )) * number_literal)) )))) & (binary_expression "1L << ((byte)uVar23 & 0x3f)" number_literal << (parenthesized_expression "((byte)uVar23 & 0x3f)" ( (binary_expression "(byte)uVar23 & 0x3f" (cast_expression "(byte)uVar23" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) )) != number_literal) )) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;)) (expression_statement "lVar30 = lVar24;" (assignment_expression "lVar30 = lVar24" identifier = identifier) ;) (if_statement "if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;" if (parenthesized_expression "(uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1)" ( (binary_expression "uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1" identifier == (binary_expression "(ulong)(*(uint *)(plVar3 + 7) - 2) + 1" (call_expression "(ulong)(*(uint *)(plVar3 + 7) - 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(*(uint *)(plVar3 + 7) - 2)" ( (binary_expression "*(uint *)(plVar3 + 7) - 2" (pointer_expression "*(uint *)(plVar3 + 7)" * (cast_expression "(uint *)(plVar3 + 7)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 7)" ( (binary_expression "plVar3 + 7" identifier + number_literal) )))) - number_literal) ))) + number_literal)) )) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;)) (expression_statement "uVar23 = uVar23 + 1;" (assignment_expression "uVar23 = uVar23 + 1" identifier = (binary_expression "uVar23 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar23 != uVar34)" ( (binary_expression "uVar23 != uVar34" identifier != identifier) )) ;) })) (labeled_statement "LAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");" statement_identifier : comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section")" identifier (argument_list "("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""is_mips16_call_fp_stub_section"" " string_content ") ))) ;)) })) (if_statement "if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }" if (parenthesized_expression "(param_8[0xe] != 0)" ( (binary_expression "param_8[0xe] != 0" (subscript_expression "param_8[0xe]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }" { (if_statement "if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }" if (parenthesized_expression "((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0'))" ( (binary_expression "(uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')" (parenthesized_expression "(uVar47 == 0x67)" ( (binary_expression "uVar47 == 0x67" identifier == number_literal) )) && (parenthesized_expression "(*(char *)(param_8 + 9) == '\0')" ( (binary_expression "*(char *)(param_8 + 9) == '\0'" (pointer_expression "*(char *)(param_8 + 9)" * (cast_expression "(char *)(param_8 + 9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 9)" ( (binary_expression "param_8 + 9" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }" { (if_statement "if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }" if (parenthesized_expression "(*(int *)((long)param_8 + 0x4c) == -1)" ( (binary_expression "*(int *)((long)param_8 + 0x4c) == -1" (pointer_expression "*(int *)((long)param_8 + 0x4c)" * (cast_expression "(int *)((long)param_8 + 0x4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x4c)" ( (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }" { (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (goto_statement "goto LAB_002c4e31;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c5256;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c509e;" goto statement_identifier ;) })) }))) (if_statement "if (*(int *)((long)param_8 + 0x4c) == -1) {\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }" if (parenthesized_expression "(*(int *)((long)param_8 + 0x4c) == -1)" ( (binary_expression "*(int *)((long)param_8 + 0x4c) == -1" (pointer_expression "*(int *)((long)param_8 + 0x4c)" * (cast_expression "(int *)((long)param_8 + 0x4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x4c)" ( (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }" { (labeled_statement "LAB_002c52f0:\n    bVar48 = uVar47 == 100;" statement_identifier : (expression_statement "bVar48 = uVar47 == 100;" (assignment_expression "bVar48 = uVar47 == 100" identifier = (binary_expression "uVar47 == 100" identifier == number_literal)) ;)) (if_statement "if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;" if (parenthesized_expression "(uVar47 == 0x85 || bVar48)" ( (binary_expression "uVar47 == 0x85 || bVar48" (binary_expression "uVar47 == 0x85" identifier == number_literal) || identifier) )) (goto_statement "goto LAB_002c4d98;" goto statement_identifier ;)) (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "bVar49 = false;" (assignment_expression "bVar49 = false" identifier = false) ;) (if_statement "if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;" if (parenthesized_expression "((uVar36 & 0xf7) != 0x85)" ( (binary_expression "(uVar36 & 0xf7) != 0x85" (parenthesized_expression "(uVar36 & 0xf7)" ( (binary_expression "uVar36 & 0xf7" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_002c4e43;" goto statement_identifier ;)) (goto_statement "goto LAB_002c5320;" goto statement_identifier ;) })) (labeled_statement "LAB_002c5256:\n  local_d0 = (uint *)&local_78;" statement_identifier : (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;)) (expression_statement "uVar36 = (uint)uVar34;" (assignment_expression "uVar36 = (uint)uVar34" identifier = (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')) {\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }" if (parenthesized_expression "(((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0'))" ( (binary_expression "((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')" (parenthesized_expression "((*(byte *)((long)plVar3 + 0x36c) & 1) == 0)" ( (binary_expression "(*(byte *)((long)plVar3 + 0x36c) & 1) == 0" (parenthesized_expression "(*(byte *)((long)plVar3 + 0x36c) & 1)" ( (binary_expression "*(byte *)((long)plVar3 + 0x36c) & 1" (pointer_expression "*(byte *)((long)plVar3 + 0x36c)" * (cast_expression "(byte *)((long)plVar3 + 0x36c)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)plVar3 + 0x36c)" ( (binary_expression "(long)plVar3 + 0x36c" (cast_expression "(long)plVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) )) == number_literal) )) && (parenthesized_expression "(cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')" ( (comma_expression "cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0'" (assignment_expression "cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff)" identifier = (call_expression "FUN_00290610(uVar47,(ulong)puVar44 & 0xff)" identifier (argument_list "(uVar47,(ulong)puVar44 & 0xff)" ( identifier , (binary_expression "(ulong)puVar44 & 0xff" (cast_expression "(ulong)puVar44" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) )))) , (binary_expression "cVar13 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) ))) )) (compound_statement "{\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }" { (expression_statement "lVar30 = *(long *)(param_4 + 0x98);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x98)" identifier = (pointer_expression "*(long *)(param_4 + 0x98)" * (cast_expression "(long *)(param_4 + 0x98)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x98)" ( (binary_expression "param_4 + 0x98" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }" { (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00291e90();\n      }" if (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) == 0)" ( (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) == 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        FUN_00291e90();\n      }" { comment (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "local_98._0_1_ = (byte)uVar17;" (assignment_expression "local_98._0_1_ = (byte)uVar17" (field_expression "local_98._0_1_" identifier . field_identifier) = (cast_expression "(byte)uVar17" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (expression_statement "bVar48 = uVar47 == 100;" (assignment_expression "bVar48 = uVar47 == 100" identifier = (binary_expression "uVar47 == 100" identifier == number_literal)) ;) (expression_statement "local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);" (assignment_expression "local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20)" identifier = (binary_expression "extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20)" (binary_expression "extraout_EDX + *(int *)(lVar30 + 8)" identifier + (pointer_expression "*(int *)(lVar30 + 8)" * (cast_expression "(int *)(lVar30 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) ))))) + (call_expression "(uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20)" ( (binary_expression "(*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20" (parenthesized_expression "(*(byte *)((long)param_8 + 0x39) >> 2 & 0x30)" ( (binary_expression "*(byte *)((long)param_8 + 0x39) >> 2 & 0x30" (binary_expression "*(byte *)((long)param_8 + 0x39) >> 2" (pointer_expression "*(byte *)((long)param_8 + 0x39)" * (cast_expression "(byte *)((long)param_8 + 0x39)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x39)" ( (binary_expression "(long)param_8 + 0x39" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) >> number_literal) & number_literal) )) == number_literal) ))))) ;) (expression_statement "bVar49 = (bool)((byte)local_98 & bVar48);" (assignment_expression "bVar49 = (bool)((byte)local_98 & bVar48)" identifier = (cast_expression "(bool)((byte)local_98 & bVar48)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "((byte)local_98 & bVar48)" ( (binary_expression "(byte)local_98 & bVar48" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) & identifier) )))) ;) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) (labeled_statement "joined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }" statement_identifier : (if_statement "if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }" if (parenthesized_expression "(bVar49 != false)" ( (binary_expression "bVar49 != false" identifier != false) )) (compound_statement "{\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }" { (expression_statement "uVar17 = (uint)bVar49;" (assignment_expression "uVar17 = (uint)bVar49" identifier = (cast_expression "(uint)bVar49" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (goto_statement "goto LAB_002c532c;" goto statement_identifier ;) }))) (labeled_statement "LAB_002c4e31:\n      bVar49 = bVar48;" statement_identifier : (expression_statement "bVar49 = bVar48;" (assignment_expression "bVar49 = bVar48" identifier = identifier) ;)) (if_statement "if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;" if (parenthesized_expression "((uVar36 & 0xf7) == 0x85)" ( (binary_expression "(uVar36 & 0xf7) == 0x85" (parenthesized_expression "(uVar36 & 0xf7)" ( (binary_expression "uVar36 & 0xf7" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_002c5320;" goto statement_identifier ;)) (labeled_statement "LAB_002c4e43:\n      bVar49 = bVar48;" statement_identifier : (expression_statement "bVar49 = bVar48;" (assignment_expression "bVar49 = bVar48" identifier = identifier) ;)) (if_statement "if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }" if (parenthesized_expression "(uVar47 - 0x8b < 2)" ( (binary_expression "uVar47 - 0x8b < 2" (binary_expression "uVar47 - 0x8b" identifier - number_literal) < number_literal) )) (compound_statement "{\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }" { (labeled_statement "LAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }" statement_identifier : (if_statement "if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }" if (parenthesized_expression "((char)puVar44 != '\0')" ( (binary_expression "(char)puVar44 != '\0'" (cast_expression "(char)puVar44" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }" { (labeled_statement "LAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");" statement_identifier : (expression_statement "uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");" (assignment_expression "uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other")" identifier = (call_expression "gettext("MIPS16 and microMIPS functions cannot call each other")" identifier (argument_list "("MIPS16 and microMIPS functions cannot call each other")" ( (string_literal ""MIPS16 and microMIPS functions cannot call each other"" " string_content ") )))) ;)) (expression_statement "FUN_0034a750(uVar21);" (call_expression "FUN_0034a750(uVar21)" identifier (argument_list "(uVar21)" ( identifier ))) ;) }))) })) (labeled_statement "LAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;" statement_identifier : (expression_statement "local_98._0_1_ = (byte)uVar17;" (assignment_expression "local_98._0_1_ = (byte)uVar17" (field_expression "local_98._0_1_" identifier . field_identifier) = (cast_expression "(byte)uVar17" ( (type_descriptor "byte" type_identifier) ) identifier)) ;)) (expression_statement "bVar52 = (byte)puVar44;" (assignment_expression "bVar52 = (byte)puVar44" identifier = (cast_expression "(byte)puVar44" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (if_statement "if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }" { (expression_statement "local_e3 = (bVar52 ^ 1) & bVar49;" (assignment_expression "local_e3 = (bVar52 ^ 1) & bVar49" identifier = (binary_expression "(bVar52 ^ 1) & bVar49" (parenthesized_expression "(bVar52 ^ 1)" ( (binary_expression "bVar52 ^ 1" identifier ^ number_literal) )) & identifier)) ;) (expression_statement "local_e2 = local_e3;" (assignment_expression "local_e2 = local_e3" identifier = identifier) ;) (if_statement "if (local_e3 != 0) goto LAB_002c4e81;" if (parenthesized_expression "(local_e3 != 0)" ( (binary_expression "local_e3 != 0" identifier != number_literal) )) (goto_statement "goto LAB_002c4e81;" goto statement_identifier ;)) (expression_statement "local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;" (assignment_expression "local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85" identifier = (binary_expression "((byte)local_98 ^ 1) & uVar47 == 0x85" (parenthesized_expression "((byte)local_98 ^ 1)" ( (binary_expression "(byte)local_98 ^ 1" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) ^ number_literal) )) & (binary_expression "uVar47 == 0x85" identifier == number_literal))) ;) (if_statement "if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }" if (parenthesized_expression "(local_e3 == 0)" ( (binary_expression "local_e3 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }" { (labeled_statement "LAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;" statement_identifier : (expression_statement "local_e3 = (byte)local_98 | bVar52;" (assignment_expression "local_e3 = (byte)local_98 | bVar52" identifier = (binary_expression "(byte)local_98 | bVar52" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) | identifier)) ;)) (if_statement "if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }" if (parenthesized_expression "(uVar47 != 4 && uVar47 != 0x25)" ( (binary_expression "uVar47 != 4 && uVar47 != 0x25" (binary_expression "uVar47 != 4" identifier != number_literal) && (binary_expression "uVar47 != 0x25" identifier != number_literal)) )) (compound_statement "{\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }" { (expression_statement "local_e3 = uVar47 == 4 || uVar47 == 0x25;" (assignment_expression "local_e3 = uVar47 == 4 || uVar47 == 0x25" identifier = (binary_expression "uVar47 == 4 || uVar47 == 0x25" (binary_expression "uVar47 == 4" identifier == number_literal) || (binary_expression "uVar47 == 0x25" identifier == number_literal))) ;) })) (if_statement "if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;" if (parenthesized_expression "(param_8 != (undefined8 *)0x0)" ( (binary_expression "param_8 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_002c5175;" goto statement_identifier ;)) (expression_statement "local_e2 = 1;" (assignment_expression "local_e2 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_002c4e81;" goto statement_identifier ;) })) (expression_statement "local_84 = 0x85;" (assignment_expression "local_84 = 0x85" identifier = number_literal) ;) (expression_statement "auStack_80[0] = 0;" (assignment_expression "auStack_80[0] = 0" (subscript_expression "auStack_80[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "auStack_80[1] = 0;" (assignment_expression "auStack_80[1] = 0" (subscript_expression "auStack_80[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_f4 = 0x21;" (assignment_expression "local_f4 = 0x21" identifier = number_literal) ;) (expression_statement "local_e2 = local_e3;" (assignment_expression "local_e2 = local_e3" identifier = identifier) ;) (labeled_statement "LAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }" statement_identifier : (if_statement "if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }" if (parenthesized_expression "(1 < local_84 - 0x8b)" ( (binary_expression "1 < local_84 - 0x8b" number_literal < (binary_expression "local_84 - 0x8b" identifier - number_literal)) )) (compound_statement "{\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }" { (expression_statement "uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);" (assignment_expression "uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8)" identifier = (call_expression "(uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8)" (call_expression "(uint)(ushort)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(ushort)" ( identifier ))) (argument_list "((ushort)*param_10 << 8 | (ushort)*param_10 >> 8)" ( (binary_expression "(ushort)*param_10 << 8 | (ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10 << 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" ( identifier )) * identifier) << number_literal) | (binary_expression "(ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" ( identifier )) * identifier) >> number_literal)) )))) ;) (expression_statement "uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;" (assignment_expression "uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8" identifier = (binary_expression "*(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8" (binary_expression "*(ushort *)((long)param_10 + 2) << 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" * (cast_expression "(ushort *)((long)param_10 + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_10 + 2)" ( (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) << number_literal) | (binary_expression "*(ushort *)((long)param_10 + 2) >> 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" * (cast_expression "(ushort *)((long)param_10 + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_10 + 2)" ( (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) >> number_literal))) ;) (labeled_statement "LAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;" statement_identifier : (expression_statement "uVar17 = uVar17 << 0x10 | (uint)uVar29;" (assignment_expression "uVar17 = uVar17 << 0x10 | (uint)uVar29" identifier = (binary_expression "uVar17 << 0x10 | (uint)uVar29" (binary_expression "uVar17 << 0x10" identifier << number_literal) | (cast_expression "(uint)uVar29" ( (type_descriptor "uint" type_identifier) ) identifier))) ;)) (labeled_statement "LAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;" statement_identifier : (expression_statement "*(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;" (assignment_expression "*(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;)) }))) }) (else_clause "else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }" else (compound_statement "{\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }" { (labeled_statement "LAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);" statement_identifier : (expression_statement "cVar13 = FUN_002e7200(param_8);" (assignment_expression "cVar13 = FUN_002e7200(param_8)" identifier = (call_expression "FUN_002e7200(param_8)" identifier (argument_list "(param_8)" ( identifier )))) ;)) (if_statement "if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }" if (parenthesized_expression "(cVar13 == '\0')" ( (binary_expression "cVar13 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }" { (expression_statement "local_e3 = (bVar52 ^ 1) & bVar49;" (assignment_expression "local_e3 = (bVar52 ^ 1) & bVar49" identifier = (binary_expression "(bVar52 ^ 1) & bVar49" (parenthesized_expression "(bVar52 ^ 1)" ( (binary_expression "bVar52 ^ 1" identifier ^ number_literal) )) & identifier)) ;) (if_statement "if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;" if (parenthesized_expression "((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))" ( (binary_expression "(local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0)" (parenthesized_expression "(local_e3 == 0)" ( (binary_expression "local_e3 == 0" identifier == number_literal) )) && (parenthesized_expression "(local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0)" ( (comma_expression "local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0" (assignment_expression "local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85" identifier = (binary_expression "((byte)local_98 ^ 1) & uVar47 == 0x85" (parenthesized_expression "((byte)local_98 ^ 1)" ( (binary_expression "(byte)local_98 ^ 1" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) ^ number_literal) )) & (binary_expression "uVar47 == 0x85" identifier == number_literal))) , (binary_expression "local_e3 == 0" identifier == number_literal)) ))) )) (goto_statement "goto LAB_002c5694;" goto statement_identifier ;)) }) (else_clause "else {\n          local_e3 = 0;\n        }" else (compound_statement "{\n          local_e3 = 0;\n        }" { (expression_statement "local_e3 = 0;" (assignment_expression "local_e3 = 0" identifier = number_literal) ;) }))) (labeled_statement "LAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }" statement_identifier : (if_statement "if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }" if (parenthesized_expression "(*(char *)((long)param_8 + 100) != '\0')" ( (binary_expression "*(char *)((long)param_8 + 100) != '\0'" (pointer_expression "*(char *)((long)param_8 + 100)" * (cast_expression "(char *)((long)param_8 + 100)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 100)" ( (binary_expression "(long)param_8 + 100" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }" { (expression_statement "local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);" (assignment_expression "local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1)" identifier = (call_expression "FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1)" identifier (argument_list "(param_8,*(int *)(param_8 + 4) != 0,1)" ( identifier , (binary_expression "*(int *)(param_8 + 4) != 0" (pointer_expression "*(int *)(param_8 + 4)" * (cast_expression "(int *)(param_8 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 4)" ( (binary_expression "param_8 + 4" identifier + number_literal) )))) != number_literal) , number_literal )))) ;) (if_statement "if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;" if (parenthesized_expression "((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))" ( (binary_expression "(local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2)" (parenthesized_expression "(local_e2 == 0)" ( (binary_expression "local_e2 == 0" identifier == number_literal) )) && (parenthesized_expression "(local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2)" ( (comma_expression "local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2" (assignment_expression "local_e2 = uVar47 == 0x92 || uVar47 == 0x14" identifier = (binary_expression "uVar47 == 0x92 || uVar47 == 0x14" (binary_expression "uVar47 == 0x92" identifier == number_literal) || (binary_expression "uVar47 == 0x14" identifier == number_literal))) , (cast_expression "(bool)local_e2" ( (type_descriptor "bool" primitive_type) ) identifier)) ))) )) (goto_statement "goto LAB_002c5579;" goto statement_identifier ;)) (labeled_statement "LAB_002c4e81:\n          local_f4 = uVar47 - 100;" statement_identifier : (expression_statement "local_f4 = uVar47 - 100;" (assignment_expression "local_f4 = uVar47 - 100" identifier = (binary_expression "uVar47 - 100" identifier - number_literal)) ;)) (expression_statement "uVar34 = (ulong)(uVar47 - 0x85);" (assignment_expression "uVar34 = (ulong)(uVar47 - 0x85)" identifier = (call_expression "(ulong)(uVar47 - 0x85)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar47 - 0x85)" ( (binary_expression "uVar47 - 0x85" identifier - number_literal) )))) ;) (expression_statement "auStack_80[0] = 0;" (assignment_expression "auStack_80[0] = 0" (subscript_expression "auStack_80[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "auStack_80[1] = 0;" (assignment_expression "auStack_80[1] = 0" (subscript_expression "auStack_80[1]" identifier [ number_literal ]) = number_literal) ;) (if_statement "if (0xc < local_f4) goto LAB_002c55ef;" if (parenthesized_expression "(0xc < local_f4)" ( (binary_expression "0xc < local_f4" number_literal < identifier) )) (goto_statement "goto LAB_002c55ef;" goto statement_identifier ;)) (expression_statement "uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;" (assignment_expression "uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8" identifier = (binary_expression "(ushort)*param_10 << 8 | (ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10 << 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" ( identifier )) * identifier) << number_literal) | (binary_expression "(ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" ( identifier )) * identifier) >> number_literal))) ;) (expression_statement "uVar17 = (uint)uVar15;" (assignment_expression "uVar17 = (uint)uVar15" identifier = (cast_expression "(uint)uVar15" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;" (assignment_expression "uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8" identifier = (binary_expression "*(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8" (binary_expression "*(ushort *)((long)param_10 + 2) << 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" * (cast_expression "(ushort *)((long)param_10 + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_10 + 2)" ( (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) << number_literal) | (binary_expression "*(ushort *)((long)param_10 + 2) >> 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" * (cast_expression "(ushort *)((long)param_10 + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_10 + 2)" ( (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) >> number_literal))) ;) (expression_statement "local_84 = uVar47;" (assignment_expression "local_84 = uVar47" identifier = identifier) ;) (if_statement "if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }" if (parenthesized_expression "(uVar47 - 0x85 < 0x29)" ( (binary_expression "uVar47 - 0x85 < 0x29" (binary_expression "uVar47 - 0x85" identifier - number_literal) < number_literal) )) (compound_statement "{\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }" { (if_statement "if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;" if (parenthesized_expression "((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0)" ( (binary_expression "(0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0" (parenthesized_expression "(0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1)" ( (binary_expression "0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> (uVar34 & 0x3f)" number_literal >> (parenthesized_expression "(uVar34 & 0x3f)" ( (binary_expression "uVar34 & 0x3f" identifier & number_literal) ))) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_002c5704;" goto statement_identifier ;)) (goto_statement "goto LAB_002c4ee9;" goto statement_identifier ;) })) (if_statement "if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }" if (parenthesized_expression "(uVar47 == 100)" ( (binary_expression "uVar47 == 100" identifier == number_literal) )) (compound_statement "{\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }" { (expression_statement "local_f4 = 0;" (assignment_expression "local_f4 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_002c4ee9;" goto statement_identifier ;) })) (labeled_statement "LAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);" statement_identifier : (expression_statement "uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);" (assignment_expression "uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb)" identifier = (binary_expression "(uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb)" (binary_expression "(uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb" (binary_expression "(uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10" (binary_expression "(uint)(uVar15 & 0x7e0) | uVar29 & 0x1f" (call_expression "(uint)(uVar15 & 0x7e0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar15 & 0x7e0)" ( (binary_expression "uVar15 & 0x7e0" identifier & number_literal) ))) | (binary_expression "uVar29 & 0x1f" identifier & number_literal)) | (binary_expression "(uVar15 & 0xf800) << 0x10" (parenthesized_expression "(uVar15 & 0xf800)" ( (binary_expression "uVar15 & 0xf800" identifier & number_literal) )) << number_literal)) | (binary_expression "(uVar29 & 0xffe0) << 0xb" (parenthesized_expression "(uVar29 & 0xffe0)" ( (binary_expression "uVar29 & 0xffe0" identifier & number_literal) )) << number_literal)) | (call_expression "(uint)(((ulong)uVar15 & 0x1f) << 0xb)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(((ulong)uVar15 & 0x1f) << 0xb)" ( (binary_expression "((ulong)uVar15 & 0x1f) << 0xb" (parenthesized_expression "((ulong)uVar15 & 0x1f)" ( (binary_expression "(ulong)uVar15 & 0x1f" (cast_expression "(ulong)uVar15" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) )) << number_literal) ))))) ;)) (goto_statement "goto LAB_002c4ef1;" goto statement_identifier ;) }))) comment (expression_statement "local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);" (assignment_expression "local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0)" identifier = (call_expression "FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0)" identifier (argument_list "(param_8,*(int *)(param_8 + 4) != 0,0)" ( identifier , (binary_expression "*(int *)(param_8 + 4) != 0" (pointer_expression "*(int *)(param_8 + 4)" * (cast_expression "(int *)(param_8 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 4)" ( (binary_expression "param_8 + 4" identifier + number_literal) )))) != number_literal) , number_literal )))) ;) (if_statement "if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;" if (parenthesized_expression "((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))" ( (binary_expression "(local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92)" (parenthesized_expression "(local_e2 != 0)" ( (binary_expression "local_e2 != 0" identifier != number_literal) )) || (parenthesized_expression "(local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92)" ( (comma_expression "local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92" (assignment_expression "local_e2 = uVar47 == 0x14 || uVar47 == 0x92" identifier = (binary_expression "uVar47 == 0x14 || uVar47 == 0x92" (binary_expression "uVar47 == 0x14" identifier == number_literal) || (binary_expression "uVar47 == 0x92" identifier == number_literal))) , (binary_expression "uVar47 != 0x14 && uVar47 != 0x92" (binary_expression "uVar47 != 0x14" identifier != number_literal) && (binary_expression "uVar47 != 0x92" identifier != number_literal))) ))) )) (goto_statement "goto LAB_002c4e81;" goto statement_identifier ;)) (labeled_statement "LAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }" statement_identifier : (if_statement "if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }" if (parenthesized_expression "(uVar47 - 0x85 < 0x29)" ( (binary_expression "uVar47 - 0x85 < 0x29" (binary_expression "uVar47 - 0x85" identifier - number_literal) < number_literal) )) (compound_statement "{\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }" { (expression_statement "uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;" (assignment_expression "uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff" identifier = (binary_expression "1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff" (binary_expression "1L << ((byte)(uVar47 - 0x85) & 0x3f)" number_literal << (parenthesized_expression "((byte)(uVar47 - 0x85) & 0x3f)" ( (binary_expression "(byte)(uVar47 - 0x85) & 0x3f" (call_expression "(byte)(uVar47 - 0x85)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar47 - 0x85)" ( (binary_expression "uVar47 - 0x85" identifier - number_literal) ))) & number_literal) ))) & number_literal)) ;) (expression_statement "uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);" (assignment_expression "uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc)" identifier = (call_expression "(ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc)" ( (binary_expression "(-(uint)(uVar23 == 0) & 0xffffff82) + 0xc" (parenthesized_expression "(-(uint)(uVar23 == 0) & 0xffffff82)" ( (binary_expression "-(uint)(uVar23 == 0) & 0xffffff82" (unary_expression "-(uint)(uVar23 == 0)" - (call_expression "(uint)(uVar23 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar23 == 0)" ( (binary_expression "uVar23 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal) )))) ;) (expression_statement "local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;" (assignment_expression "local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d" identifier = (binary_expression "(-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d" (parenthesized_expression "(-(uint)(uVar23 == 0) & 0xffffff82)" ( (binary_expression "-(uint)(uVar23 == 0) & 0xffffff82" (unary_expression "-(uint)(uVar23 == 0)" - (call_expression "(uint)(uVar23 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar23 == 0)" ( (binary_expression "uVar23 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal)) ;) (expression_statement "uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;" (assignment_expression "uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91" identifier = (binary_expression "(-(uint)(uVar23 == 0) & 0xffffff82) + 0x91" (parenthesized_expression "(-(uint)(uVar23 == 0) & 0xffffff82)" ( (binary_expression "-(uint)(uVar23 == 0) & 0xffffff82" (unary_expression "-(uint)(uVar23 == 0)" - (call_expression "(uint)(uVar23 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar23 == 0)" ( (binary_expression "uVar23 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal)) ;) }) (else_clause "else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }" else (compound_statement "{\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }" { (expression_statement "uVar34 = 0xffffff8e;" (assignment_expression "uVar34 = 0xffffff8e" identifier = number_literal) ;) (expression_statement "uVar47 = 0x13;" (assignment_expression "uVar47 = 0x13" identifier = number_literal) ;) (expression_statement "local_f4 = 0xffffffaf;" (assignment_expression "local_f4 = 0xffffffaf" identifier = number_literal) ;) })))) (expression_statement "auStack_80[0] = 0;" (assignment_expression "auStack_80[0] = 0" (subscript_expression "auStack_80[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "auStack_80[1] = 0;" (assignment_expression "auStack_80[1] = 0" (subscript_expression "auStack_80[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_e2 = 0;" (assignment_expression "local_e2 = 0" identifier = number_literal) ;) (labeled_statement "LAB_002c55ef:\n        local_84 = uVar47;" statement_identifier : (expression_statement "local_84 = uVar47;" (assignment_expression "local_84 = uVar47" identifier = identifier) ;)) (if_statement "if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;" if (parenthesized_expression "(((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))" ( (binary_expression "((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0)" (parenthesized_expression "((uint)uVar34 < 0x29)" ( (binary_expression "(uint)uVar34 < 0x29" (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal) )) && (parenthesized_expression "((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0)" ( (binary_expression "(0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0" (parenthesized_expression "(0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1)" ( (binary_expression "0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> (uVar34 & 0x3f)" number_literal >> (parenthesized_expression "(uVar34 & 0x3f)" ( (binary_expression "uVar34 & 0x3f" identifier & number_literal) ))) & number_literal) )) != number_literal) ))) )) (goto_statement "goto LAB_002c581a;" goto statement_identifier ;)) }))) (expression_statement "uVar47 = local_84;" (assignment_expression "uVar47 = local_84" identifier = identifier) ;) (expression_statement "bVar48 = param_3 == 9;" (assignment_expression "bVar48 = param_3 == 9" identifier = (binary_expression "param_3 == 9" identifier == number_literal)) ;) (expression_statement "auStack_80[0] = 0;" (assignment_expression "auStack_80[0] = 0" (subscript_expression "auStack_80[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "auStack_80[1] = 0;" (assignment_expression "auStack_80[1] = 0" (subscript_expression "auStack_80[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar44 = &local_84;" (assignment_expression "puVar44 = &local_84" identifier = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "local_e8 = 0;" (assignment_expression "local_e8 = 0" identifier = number_literal) ;) (expression_statement "uVar17 = local_84;" (assignment_expression "uVar17 = local_84" identifier = identifier) ;) (labeled_statement "LAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;" statement_identifier : (if_statement "if (uVar17 == 0) goto LAB_002c5380;" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c5380;" goto statement_identifier ;))) (expression_statement "bVar49 = local_b0 == uVar35;" (assignment_expression "bVar49 = local_b0 == uVar35" identifier = (binary_expression "local_b0 == uVar35" identifier == identifier)) ;) (expression_statement "bVar50 = local_c4 != 0;" (assignment_expression "bVar50 = local_c4 != 0" identifier = (binary_expression "local_c4 != 0" identifier != number_literal)) ;) (expression_statement "cVar13 = bVar49 && bVar50;" (assignment_expression "cVar13 = bVar49 && bVar50" identifier = (binary_expression "bVar49 && bVar50" identifier && identifier)) ;) (expression_statement "uVar36 = (uint)(byte)cVar13;" (assignment_expression "uVar36 = (uint)(byte)cVar13" identifier = (cast_expression "(uint)(byte)cVar13" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)cVar13" ( (type_descriptor "byte" type_identifier) ) identifier))) ;) (expression_statement "uVar34 = (ulong)uVar36;" (assignment_expression "uVar34 = (ulong)uVar36" identifier = (cast_expression "(ulong)uVar36" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (if_statement "if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }" if (parenthesized_expression "(*(char *)((long)param_1 + 4) == '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) == '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }" { (expression_statement "*(char *)((long)param_1 + 4) = cVar13;" (assignment_expression "*(char *)((long)param_1 + 4) = cVar13" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = identifier) ;) (switch_statement "switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }" switch (parenthesized_expression "(uVar17)" ( identifier )) (compound_statement "{\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }" { (case_statement "default:\n          goto switchD_002c5379_caseD_0;" default : (goto_statement "goto switchD_002c5379_caseD_0;" goto statement_identifier ;)) (case_statement "case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;" case number_literal : (expression_statement "uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;" (assignment_expression "uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8" identifier = (binary_expression "(ushort)*param_10 << 8 | (ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10 << 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" ( identifier )) * identifier) << number_literal) | (binary_expression "(ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" ( identifier )) * identifier) >> number_literal))) ;) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }" { (expression_statement "uVar17 = (uint)uVar15;" (assignment_expression "uVar17 = (uint)uVar15" identifier = (cast_expression "(uint)uVar15" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }" if (parenthesized_expression "((short)uVar15 < 0)" ( (binary_expression "(short)uVar15 < 0" (cast_expression "(short)uVar15" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier) < number_literal) )) (compound_statement "{\n              uVar17 = uVar15 - 0x10000;\n            }" { (expression_statement "uVar17 = uVar15 - 0x10000;" (assignment_expression "uVar17 = uVar15 - 0x10000" identifier = (binary_expression "uVar15 - 0x10000" identifier - number_literal)) ;) })) })) (goto_statement "goto LAB_002c70ec;" goto statement_identifier ;)) (case_statement "case 2:\n          goto switchD_002c5379_caseD_2;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2;" goto statement_identifier ;)) (case_statement "case 3:\n          goto switchD_002c4f87_caseD_3;" case number_literal : (goto_statement "goto switchD_002c4f87_caseD_3;" goto statement_identifier ;)) (case_statement "case 4:" case number_literal :) (case_statement "case 100:" case number_literal :) (case_statement "case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;" case number_literal : (expression_statement "bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);" (assignment_expression "bVar51 = (bool)((!bVar49 || !bVar50) & local_e3)" identifier = (cast_expression "(bool)((!bVar49 || !bVar50) & local_e3)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "((!bVar49 || !bVar50) & local_e3)" ( (binary_expression "(!bVar49 || !bVar50) & local_e3" (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) & identifier) )))) ;) (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;" (assignment_expression "uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" identifier = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal))) ;) (expression_statement "uVar45 = uVar16 | uVar36 << 0x18;" (assignment_expression "uVar45 = uVar16 | uVar36 << 0x18" identifier = (binary_expression "uVar16 | uVar36 << 0x18" identifier | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) (expression_statement "local_c0 = local_c8;" (assignment_expression "local_c0 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }" { (labeled_statement "LAB_002c7644:\n            bVar10 = bVar48;" statement_identifier : (expression_statement "bVar10 = bVar48;" (assignment_expression "bVar10 = bVar48" identifier = identifier) ;)) (if_statement "if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }" if (parenthesized_expression "(bVar51 == false)" ( (binary_expression "bVar51 == false" identifier == false) )) (compound_statement "{\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }" { (labeled_statement "LAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;" statement_identifier : (expression_statement "bVar51 = param_8 == (undefined8 *)0x0;" (assignment_expression "bVar51 = param_8 == (undefined8 *)0x0" identifier = (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;)) (if_statement "if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;" if (parenthesized_expression "((local_e3 == 1) || (uVar17 != 0x85))" ( (binary_expression "(local_e3 == 1) || (uVar17 != 0x85)" (parenthesized_expression "(local_e3 == 1)" ( (binary_expression "local_e3 == 1" identifier == number_literal) )) || (parenthesized_expression "(uVar17 != 0x85)" ( (binary_expression "uVar17 != 0x85" identifier != number_literal) ))) )) (goto_statement "goto LAB_002c73c9;" goto statement_identifier ;)) (if_statement "if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }" if (parenthesized_expression "(bVar51)" ( identifier )) (compound_statement "{\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }" { (expression_statement "local_118 = 1;" (assignment_expression "local_118 = 1" identifier = number_literal) ;) (expression_statement "uVar36 = 0xf8000000;" (assignment_expression "uVar36 = 0xf8000000" identifier = number_literal) ;) (goto_statement "goto LAB_002c73e1;" goto statement_identifier ;) })) (expression_statement "local_118 = 1;" (assignment_expression "local_118 = 1" identifier = number_literal) ;) (expression_statement "uVar36 = local_c0 & 0x7ffffff;" (assignment_expression "uVar36 = local_c0 & 0x7ffffff" identifier = (binary_expression "local_c0 & 0x7ffffff" identifier & number_literal)) ;) (if_statement "if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }" if (parenthesized_expression "((local_c0 & 0x4000000) != 0)" ( (binary_expression "(local_c0 & 0x4000000) != 0" (parenthesized_expression "(local_c0 & 0x4000000)" ( (binary_expression "local_c0 & 0x4000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }" { (expression_statement "uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;" (assignment_expression "uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000" identifier = (binary_expression "(local_c0 & 0x7ffffff) + 0xf8000000" (parenthesized_expression "(local_c0 & 0x7ffffff)" ( (binary_expression "local_c0 & 0x7ffffff" identifier & number_literal) )) + number_literal)) ;) })) (goto_statement "goto LAB_002c73f5;" goto statement_identifier ;) })) (labeled_statement "LAB_002c7cf3:\n            bVar48 = bVar10;" statement_identifier : (expression_statement "bVar48 = bVar10;" (assignment_expression "bVar48 = bVar10" identifier = identifier) ;)) (expression_statement "bVar52 = FUN_001d7270(param_9,plVar3,0);" (assignment_expression "bVar52 = FUN_001d7270(param_9,plVar3,0)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,0)" identifier (argument_list "(param_9,plVar3,0)" ( identifier , identifier , number_literal )))) ;) (if_statement "if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;" if (parenthesized_expression "((bool)(bVar52 & 3) == (uVar17 == 4))" ( (binary_expression "(bool)(bVar52 & 3) == (uVar17 == 4)" (cast_expression "(bool)(bVar52 & 3)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(bVar52 & 3)" ( (binary_expression "bVar52 & 3" identifier & number_literal) ))) == (parenthesized_expression "(uVar17 == 4)" ( (binary_expression "uVar17 == 4" identifier == number_literal) ))) )) (goto_statement "goto LAB_002c764c;" goto statement_identifier ;)) (expression_statement "uVar21 = gettext("JALX to a non-word-aligned address");" (assignment_expression "uVar21 = gettext("JALX to a non-word-aligned address")" identifier = (call_expression "gettext("JALX to a non-word-aligned address")" identifier (argument_list "("JALX to a non-word-aligned address")" ( (string_literal ""JALX to a non-word-aligned address"" " string_content ") )))) ;) (expression_statement "FUN_0034a800(uVar21);" (call_expression "FUN_0034a800(uVar21)" identifier (argument_list "(uVar21)" ( identifier ))) ;) (labeled_statement "LAB_002c7d32:\n            uVar16 = 2;" statement_identifier : (expression_statement "uVar16 = 2;" (assignment_expression "uVar16 = 2" identifier = number_literal) ;)) }) (else_clause "else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }" else (compound_statement "{\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }" { (if_statement "if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }" if (parenthesized_expression "(uVar17 == 0x85)" ( (binary_expression "uVar17 == 0x85" identifier == number_literal) )) (compound_statement "{\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }" { (expression_statement "local_c0 = uVar45 * 2 & 0x7fffffe;" (assignment_expression "local_c0 = uVar45 * 2 & 0x7fffffe" identifier = (binary_expression "uVar45 * 2 & 0x7fffffe" (binary_expression "uVar45 * 2" identifier * number_literal) & number_literal)) ;) (goto_statement "goto LAB_002c7644;" goto statement_identifier ;) })) (expression_statement "local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;" (assignment_expression "local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2" identifier = (binary_expression "(uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2" (parenthesized_expression "(uVar16 | uVar36 << 0x18 & 0x3ffffff)" ( (binary_expression "uVar16 | uVar36 << 0x18 & 0x3ffffff" identifier | (binary_expression "uVar36 << 0x18 & 0x3ffffff" (binary_expression "uVar36 << 0x18" identifier << number_literal) & number_literal)) )) << number_literal)) ;) (expression_statement "bVar10 = bVar51;" (assignment_expression "bVar10 = bVar51" identifier = identifier) ;) (if_statement "if (bVar51 != false) goto LAB_002c7cf3;" if (parenthesized_expression "(bVar51 != false)" ( (binary_expression "bVar51 != false" identifier != false) )) (goto_statement "goto LAB_002c7cf3;" goto statement_identifier ;)) (labeled_statement "LAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;" statement_identifier : (expression_statement "bVar51 = param_8 == (undefined8 *)0x0;" (assignment_expression "bVar51 = param_8 == (undefined8 *)0x0" identifier = (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;)) (if_statement "if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }" if (parenthesized_expression "(bVar51)" ( identifier )) (compound_statement "{\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }" { (expression_statement "local_118 = 2;" (assignment_expression "local_118 = 2" identifier = number_literal) ;) (expression_statement "uVar36 = 0xf0000000;" (assignment_expression "uVar36 = 0xf0000000" identifier = number_literal) ;) (labeled_statement "LAB_002c73e1:\n              bVar51 = true;" statement_identifier : (expression_statement "bVar51 = true;" (assignment_expression "bVar51 = true" identifier = true) ;)) (expression_statement "uVar36 = param_11 + 4 & uVar36 | local_c0;" (assignment_expression "uVar36 = param_11 + 4 & uVar36 | local_c0" identifier = (binary_expression "param_11 + 4 & uVar36 | local_c0" (binary_expression "param_11 + 4 & uVar36" (binary_expression "param_11 + 4" identifier + number_literal) & identifier) | identifier)) ;) }) (else_clause "else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }" else (compound_statement "{\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }" { (expression_statement "local_118 = 2;" (assignment_expression "local_118 = 2" identifier = number_literal) ;) (expression_statement "uVar36 = local_c0 & 0xfffffff;" (assignment_expression "uVar36 = local_c0 & 0xfffffff" identifier = (binary_expression "local_c0 & 0xfffffff" identifier & number_literal)) ;) (if_statement "if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }" if (parenthesized_expression "((local_c0 & 0x8000000) != 0)" ( (binary_expression "(local_c0 & 0x8000000) != 0" (parenthesized_expression "(local_c0 & 0x8000000)" ( (binary_expression "local_c0 & 0x8000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }" { (expression_statement "uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;" (assignment_expression "uVar36 = (local_c0 & 0xfffffff) + 0xf0000000" identifier = (binary_expression "(local_c0 & 0xfffffff) + 0xf0000000" (parenthesized_expression "(local_c0 & 0xfffffff)" ( (binary_expression "local_c0 & 0xfffffff" identifier & number_literal) )) + number_literal)) ;) })) }))) (labeled_statement "LAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);" statement_identifier : (expression_statement "uVar36 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "uVar36 = FUN_001d7270(param_9,plVar3,uVar36)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" identifier (argument_list "(param_9,plVar3,uVar36)" ( identifier , identifier , identifier )))) ;)) (if_statement "if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }" if (parenthesized_expression "(((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f)))))" ( (binary_expression "((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))" (parenthesized_expression "((!bVar51) && (!bVar49 || !bVar50))" ( (binary_expression "(!bVar51) && (!bVar49 || !bVar50)" (parenthesized_expression "(!bVar51)" ( (unary_expression "!bVar51" ! identifier) )) && (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) ))) )) && (parenthesized_expression "((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))" ( (parenthesized_expression "(cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f)))" ( (comma_expression "cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))" (assignment_expression "cVar13 = FUN_002e7200(param_8)" identifier = (call_expression "FUN_002e7200(param_8)" identifier (argument_list "(param_8)" ( identifier )))) , (binary_expression "cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))" (binary_expression "cVar13 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))" ( (binary_expression "(uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f)" (binary_expression "(uVar36 >> local_118) >> 0x1a" (parenthesized_expression "(uVar36 >> local_118)" ( (binary_expression "uVar36 >> local_118" identifier >> identifier) )) >> number_literal) != (binary_expression "param_11 + 4 >> (local_118 + 0x1aU & 0x1f)" (binary_expression "param_11 + 4" identifier + number_literal) >> (parenthesized_expression "(local_118 + 0x1aU & 0x1f)" ( (binary_expression "local_118 + 0x1aU & 0x1f" (binary_expression "local_118 + 0x1aU" identifier + number_literal) & number_literal) )))) )))) )) ))) )) (compound_statement "{\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }" { (labeled_statement "LAB_002c7359:\n              uVar16 = 1;" statement_identifier : (expression_statement "uVar16 = 1;" (assignment_expression "uVar16 = 1" identifier = number_literal) ;)) (goto_statement "goto LAB_002c5940;" goto statement_identifier ;) })) (expression_statement "uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;" (assignment_expression "uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff" identifier = (binary_expression "uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff" identifier ^ (binary_expression "(uVar36 >> local_118 ^ uVar45) & 0x3ffffff" (parenthesized_expression "(uVar36 >> local_118 ^ uVar45)" ( (binary_expression "uVar36 >> local_118 ^ uVar45" (binary_expression "uVar36 >> local_118" identifier >> identifier) ^ identifier) )) & number_literal))) ;) (if_statement "if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }" if (parenthesized_expression "(local_e3 != 0)" ( (binary_expression "local_e3 != 0" identifier != number_literal) )) (compound_statement "{\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }" { (expression_statement "uVar45 = uVar45 >> 0x1a;" (assignment_expression "uVar45 = uVar45 >> 0x1a" identifier = (binary_expression "uVar45 >> 0x1a" identifier >> number_literal)) ;) (if_statement "if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" if (parenthesized_expression "(uVar17 == 100)" ( (binary_expression "uVar17 == 100" identifier == number_literal) )) (compound_statement "{\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }" { (expression_statement "iVar38 = 7;" (assignment_expression "iVar38 = 7" identifier = number_literal) ;) (expression_statement "bVar51 = uVar45 - 6 < 2;" (assignment_expression "bVar51 = uVar45 - 6 < 2" identifier = (binary_expression "uVar45 - 6 < 2" (binary_expression "uVar45 - 6" identifier - number_literal) < number_literal)) ;) }) (else_clause "else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" else (if_statement "if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" if (parenthesized_expression "(uVar17 == 0x85)" ( (binary_expression "uVar17 == 0x85" identifier == number_literal) )) (compound_statement "{\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }" { (expression_statement "iVar38 = 0x3c;" (assignment_expression "iVar38 = 0x3c" identifier = number_literal) ;) (expression_statement "bVar51 = uVar45 - 0x3c < 2;" (assignment_expression "bVar51 = uVar45 - 0x3c < 2" identifier = (binary_expression "uVar45 - 0x3c < 2" (binary_expression "uVar45 - 0x3c" identifier - number_literal) < number_literal)) ;) }) (else_clause "else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" else (compound_statement "{\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" { (expression_statement "bVar51 = uVar45 == 3 || uVar45 == 0x1d;" (assignment_expression "bVar51 = uVar45 == 3 || uVar45 == 0x1d" identifier = (binary_expression "uVar45 == 3 || uVar45 == 0x1d" (binary_expression "uVar45 == 3" identifier == number_literal) || (binary_expression "uVar45 == 0x1d" identifier == number_literal))) ;) (expression_statement "iVar38 = 0x1d;" (assignment_expression "iVar38 = 0x1d" identifier = number_literal) ;) }))))) (if_statement "if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }" if (parenthesized_expression "((!bVar51) && (!bVar49 || !bVar50))" ( (binary_expression "(!bVar51) && (!bVar49 || !bVar50)" (parenthesized_expression "(!bVar51)" ( (unary_expression "!bVar51" ! identifier) )) && (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) ))) )) (compound_statement "{\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }" { (expression_statement "uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );" (assignment_expression "uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                )" identifier = (call_expression "gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                )" identifier (argument_list "(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                )" ( (string_literal ""Unsupported jump between ISA modes; consider recompiling with interlinking enabled."" " string_content ") )))) ;) (expression_statement "FUN_0034a750(uVar21);" (call_expression "FUN_0034a750(uVar21)" identifier (argument_list "(uVar21)" ( identifier ))) ;) (goto_statement "goto LAB_002c7d32;" goto statement_identifier ;) })) (expression_statement "uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;" (assignment_expression "uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a" identifier = (binary_expression "uVar19 & 0x3ffffff | iVar38 << 0x1a" (binary_expression "uVar19 & 0x3ffffff" identifier & number_literal) | (binary_expression "iVar38 << 0x1a" identifier << number_literal))) ;) })) (if_statement "if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }" if (parenthesized_expression "(*(long *)(PTR_DAT_0067cb08 + 0x10) == 0)" ( (binary_expression "*(long *)(PTR_DAT_0067cb08 + 0x10) == 0" (pointer_expression "*(long *)(PTR_DAT_0067cb08 + 0x10)" * (cast_expression "(long *)(PTR_DAT_0067cb08 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0067cb08 + 0x10)" ( (binary_expression "PTR_DAT_0067cb08 + 0x10" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              FUN_002932f0();\n            }" { comment (expression_statement "FUN_002932f0();" (call_expression "FUN_002932f0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (!bVar49 || !bVar50) goto LAB_002c5ccb;" if (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) (goto_statement "goto LAB_002c5ccb;" goto statement_identifier ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_1 = uVar19;" (assignment_expression "*(uint *)param_1 = uVar19" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }))) (goto_statement "goto LAB_002c5940;" goto statement_identifier ;)) (case_statement "case 5:" case number_literal :) (case_statement "case 0x68:" case number_literal :) (case_statement "case 0x86:\n          goto switchD_002c5379_caseD_5;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_5;" goto statement_identifier ;)) (case_statement "case 6:" case number_literal :) (case_statement "case 0x69:" case number_literal :) (case_statement "case 0x87:" case number_literal :) (case_statement "case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;" case number_literal : (expression_statement "local_130 = (uint)*param_10;" (assignment_expression "local_130 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar16 = (local_130 & 0xff0000) >> 8;" (assignment_expression "uVar16 = (local_130 & 0xff0000) >> 8" identifier = (binary_expression "(local_130 & 0xff0000) >> 8" (parenthesized_expression "(local_130 & 0xff0000)" ( (binary_expression "local_130 & 0xff0000" identifier & number_literal) )) >> number_literal)) ;) (expression_statement "uVar45 = local_130 >> 0x18 | uVar16;" (assignment_expression "uVar45 = local_130 >> 0x18 | uVar16" identifier = (binary_expression "local_130 >> 0x18 | uVar16" (binary_expression "local_130 >> 0x18" identifier >> number_literal) | identifier)) ;) (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" identifier = identifier) ;) (if_statement "if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }" if (parenthesized_expression "((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0))" ( (binary_expression "(bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)" (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) && (parenthesized_expression "(uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)" ( (comma_expression "uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0" (assignment_expression "uVar19 = uVar45 - 0x10000" identifier = (binary_expression "uVar45 - 0x10000" identifier - number_literal)) , (binary_expression "(uVar16 & 0x8000) == 0" (parenthesized_expression "(uVar16 & 0x8000)" ( (binary_expression "uVar16 & 0x8000" identifier & number_literal) )) == number_literal)) ))) )) (compound_statement "{\n            uVar19 = uVar45;\n          }" { (expression_statement "uVar19 = uVar45;" (assignment_expression "uVar19 = uVar45" identifier = identifier) ;) })) (goto_statement "goto LAB_002c7171;" goto statement_identifier ;)) (case_statement "case 7:" case number_literal :) (case_statement "case 8:" case number_literal :) (case_statement "case 0x65:" case number_literal :) (case_statement "case 0x88:" case number_literal :) (case_statement "case 0x89:" case number_literal :) (case_statement "case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;" case number_literal : (expression_statement "lVar30 = *(long *)(param_4 + 0x28);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x28)" identifier = (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) goto LAB_002c7253;" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (goto_statement "goto LAB_002c7253;" goto statement_identifier ;)) (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) (labeled_statement "LAB_002c7297:\n          uVar36 = (uint)*param_10;" statement_identifier : (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar19 = (uVar36 & 0xff0000) >> 8;" (assignment_expression "uVar19 = (uVar36 & 0xff0000) >> 8" identifier = (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) ;) (expression_statement "uVar16 = uVar36 >> 0x18 | uVar19;" (assignment_expression "uVar16 = uVar36 >> 0x18 | uVar19" identifier = (binary_expression "uVar36 >> 0x18 | uVar19" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | identifier)) ;) (expression_statement "uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;" (assignment_expression "uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" identifier = (binary_expression "uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar16 | (uVar36 & 0xff00) << 8" identifier | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }" { (if_statement "if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }" if (parenthesized_expression "(uVar17 == 0xac)" ( (binary_expression "uVar17 == 0xac" identifier == number_literal) )) (compound_statement "{\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }" { (expression_statement "uVar36 = uVar45 * 4 & 0x1fc;" (assignment_expression "uVar36 = uVar45 * 4 & 0x1fc" identifier = (binary_expression "uVar45 * 4 & 0x1fc" (binary_expression "uVar45 * 4" identifier * number_literal) & number_literal)) ;) }) (else_clause "else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }" else (compound_statement "{\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }" { (expression_statement "uVar36 = uVar16 - 0x10000;" (assignment_expression "uVar36 = uVar16 - 0x10000" identifier = (binary_expression "uVar16 - 0x10000" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }" if (parenthesized_expression "((uVar19 & 0x8000) == 0)" ( (binary_expression "(uVar19 & 0x8000) == 0" (parenthesized_expression "(uVar19 & 0x8000)" ( (binary_expression "uVar19 & 0x8000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                uVar36 = uVar16;\n              }" { (expression_statement "uVar36 = uVar16;" (assignment_expression "uVar36 = uVar16" identifier = identifier) ;) })) }))) })) (goto_statement "goto LAB_002c72d4;" goto statement_identifier ;)) (case_statement "case 9:" case number_literal :) (case_statement "case 0x66:" case number_literal :) (case_statement "case 0x8a:\n          goto switchD_002c5379_caseD_9;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_9;" goto statement_identifier ;)) (case_statement "case 10:\n          goto LAB_002c6a55;" case number_literal : (goto_statement "goto LAB_002c6a55;" goto statement_identifier ;)) (case_statement "case 0xb:" case number_literal :) (case_statement "case 0x67:" case number_literal :) (case_statement "case 0x8e:\n          goto switchD_002c5379_caseD_b;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_b;" goto statement_identifier ;)) (case_statement "case 0xc:\n          goto switchD_002c5379_caseD_c;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_c;" goto statement_identifier ;)) (case_statement "case 0x12:\n          goto switchD_002c5379_caseD_12;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_12;" goto statement_identifier ;)) (case_statement "case 0x13:" case number_literal :) (case_statement "case 0x91:" case number_literal :) (case_statement "case 0xf9:\n          goto switchD_002c5379_caseD_13;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_13;" goto statement_identifier ;)) (case_statement "case 0x14:" case number_literal :) (case_statement "case 0x92:\n          goto switchD_002c5379_caseD_14;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_14;" goto statement_identifier ;)) (case_statement "case 0x15:" case number_literal :) (case_statement "case 0x93:\n          goto switchD_002c5379_caseD_15;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_15;" goto statement_identifier ;)) (case_statement "case 0x16:" case number_literal :) (case_statement "case 0x1e:" case number_literal :) (case_statement "case 0x94:" case number_literal :) (case_statement "case 0x99:\n          goto switchD_002c5379_caseD_16;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_16;" goto statement_identifier ;)) (case_statement "case 0x17:" case number_literal :) (case_statement "case 0x1f:" case number_literal :) (case_statement "case 0x95:" case number_literal :) (case_statement "case 0x9a:\n          goto switchD_002c5379_caseD_17;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_17;" goto statement_identifier ;)) (case_statement "case 0x18:" case number_literal :) (case_statement "case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;" case number_literal : (expression_statement "local_c0 = local_c8;" (assignment_expression "local_c0 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }" { (expression_statement "uVar34 = *param_10;" (assignment_expression "uVar34 = *param_10" identifier = (pointer_expression "*param_10" * identifier)) ;) (expression_statement "local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;" (assignment_expression "local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000" identifier = (binary_expression "(uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000" (binary_expression "(uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000" (binary_expression "(uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8" (call_expression "(uint)(byte)(uVar34 >> 0x38)" (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(byte)" ( identifier ))) (argument_list "(uVar34 >> 0x38)" ( (binary_expression "uVar34 >> 0x38" identifier >> number_literal) ))) | (binary_expression "((uint)(uVar34 >> 0x20) & 0xff0000) >> 8" (parenthesized_expression "((uint)(uVar34 >> 0x20) & 0xff0000)" ( (binary_expression "(uint)(uVar34 >> 0x20) & 0xff0000" (call_expression "(uint)(uVar34 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar34 >> 0x20)" ( (binary_expression "uVar34 >> 0x20" identifier >> number_literal) ))) & number_literal) )) >> number_literal)) | (binary_expression "(uint)(uVar34 >> 0x18) & 0xff0000" (call_expression "(uint)(uVar34 >> 0x18)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar34 >> 0x18)" ( (binary_expression "uVar34 >> 0x18" identifier >> number_literal) ))) & number_literal)) | (binary_expression "(uint)(uVar34 >> 8) & 0xff000000" (call_expression "(uint)(uVar34 >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar34 >> 8)" ( (binary_expression "uVar34 >> 8" identifier >> number_literal) ))) & number_literal))) ;) })) (goto_statement "goto LAB_002c6b1a;" goto statement_identifier ;)) (case_statement "case 0x1c:" case number_literal :) (case_statement "case 0x97:\n          goto LAB_002c59bd;" case number_literal : (goto_statement "goto LAB_002c59bd;" goto statement_identifier ;)) (case_statement "case 0x1d:" case number_literal :) (case_statement "case 0x98:\n          goto LAB_002c6b55;" case number_literal : (goto_statement "goto LAB_002c6b55;" goto statement_identifier ;)) (case_statement "case 0x25:" case number_literal :) (case_statement "case 0x9c:\n          goto switchD_002c5379_caseD_25;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_25;" goto statement_identifier ;)) (case_statement "case 0x27:" case number_literal :) (case_statement "case 0x29:\n          goto switchD_002c5379_caseD_27;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_27;" goto statement_identifier ;)) (case_statement "case 0x2a:" case number_literal :) (case_statement "case 0x6a:" case number_literal :) (case_statement "case 0xa2:\n          goto switchD_002c5379_caseD_2a;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2a;" goto statement_identifier ;)) (case_statement "case 0x2b:" case number_literal :) (case_statement "case 0x6b:" case number_literal :) (case_statement "case 0xa3:\n          goto switchD_002c5379_caseD_2b;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2b;" goto statement_identifier ;)) (case_statement "case 0x2c:" case number_literal :) (case_statement "case 0x6c:" case number_literal :) (case_statement "case 0xa4:\n          goto switchD_002c5379_caseD_2c;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2c;" goto statement_identifier ;)) (case_statement "case 0x2d:" case number_literal :) (case_statement "case 0x6d:" case number_literal :) (case_statement "case 0xa5:\n          goto switchD_002c5379_caseD_2d;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2d;" goto statement_identifier ;)) (case_statement "case 0x2e:" case number_literal :) (case_statement "case 0x6e:" case number_literal :) (case_statement "case 0xa6:\n          goto switchD_002c5379_caseD_2e;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2e;" goto statement_identifier ;)) (case_statement "case 0x2f:" case number_literal :) (case_statement "case 0x30:\n          goto switchD_002c5379_caseD_2f;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2f;" goto statement_identifier ;)) (case_statement "case 0x31:" case number_literal :) (case_statement "case 0x6f:" case number_literal :) (case_statement "case 0xa9:\n          goto switchD_002c5379_caseD_31;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_31;" goto statement_identifier ;)) (case_statement "case 0x32:" case number_literal :) (case_statement "case 0x70:" case number_literal :) (case_statement "case 0xaa:\n          goto switchD_002c5379_caseD_32;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_32;" goto statement_identifier ;)) (case_statement "case 0x3c:\n          goto LAB_002c6f06;" case number_literal : (goto_statement "goto LAB_002c6f06;" goto statement_identifier ;)) (case_statement "case 0x3d:\n          goto LAB_002c6fd2;" case number_literal : (goto_statement "goto LAB_002c6fd2;" goto statement_identifier ;)) (case_statement "case 0x3e:\n          goto LAB_002c6d53;" case number_literal : (goto_statement "goto LAB_002c6d53;" goto statement_identifier ;)) (case_statement "case 0x3f:\n          goto LAB_002c6e24;" case number_literal : (goto_statement "goto LAB_002c6e24;" goto statement_identifier ;)) (case_statement "case 0x40:\n          goto switchD_002c5379_caseD_40;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_40;" goto statement_identifier ;)) (case_statement "case 0x41:\n          goto LAB_002c6ccf;" case number_literal : (goto_statement "goto LAB_002c6ccf;" goto statement_identifier ;)) (case_statement "case 0x8b:\n          goto LAB_002c6bb8;" case number_literal : (goto_statement "goto LAB_002c6bb8;" goto statement_identifier ;)) (case_statement "case 0x8c:\n          goto LAB_002c6c3e;" case number_literal : (goto_statement "goto LAB_002c6c3e;" goto statement_identifier ;)) (case_statement "case 0x8d:\n          goto LAB_002c69c5;" case number_literal : (goto_statement "goto LAB_002c69c5;" goto statement_identifier ;)) (case_statement "case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;" case number_literal : (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }" { (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;" (assignment_expression "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) })) (goto_statement "goto LAB_002c6ed9;" goto statement_identifier ;)) })) })) (expression_statement "local_c8 = (uint)*param_1;" (assignment_expression "local_c8 = (uint)*param_1" identifier = (binary_expression "(uint)*param_1" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "*(char *)((long)param_1 + 4) = cVar13;" (assignment_expression "*(char *)((long)param_1 + 4) = cVar13" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "local_c0 = local_c8;" (assignment_expression "local_c0 = local_c8" identifier = identifier) ;) (switch_statement "switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }" switch (parenthesized_expression "(uVar17)" ( identifier )) (compound_statement "{\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }" { (case_statement "default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;" default : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");" statement_identifier : (expression_statement "uVar21 = gettext("unsupported reloc %u");" (assignment_expression "uVar21 = gettext("unsupported reloc %u")" identifier = (call_expression "gettext("unsupported reloc %u")" identifier (argument_list "("unsupported reloc %u")" ( (string_literal ""unsupported reloc %u"" " string_content ") )))) ;)) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17)" identifier (argument_list "(param_2,param_6,uVar35,uVar21,uVar17)" ( identifier , identifier , identifier , identifier , identifier ))) ;) (break_statement "break;" break ;)) (case_statement "case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) (labeled_statement "LAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);" statement_identifier : (expression_statement "uVar19 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "uVar19 = FUN_001d7270(param_9,plVar3,uVar17)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" identifier (argument_list "(param_9,plVar3,uVar17)" ( identifier , identifier , identifier )))) ;)) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "*(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;" (assignment_expression "*(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8" (pointer_expression "*(ushort *)param_10" * (cast_expression "(ushort *)param_10" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "(ushort)uVar19 << 8 | (ushort)uVar19 >> 8" (binary_expression "(ushort)uVar19 << 8" (cast_expression "(ushort)uVar19" ( (type_descriptor "ushort" type_identifier) ) identifier) << number_literal) | (binary_expression "(ushort)uVar19 >> 8" (cast_expression "(ushort)uVar19" ( (type_descriptor "ushort" type_identifier) ) identifier) >> number_literal))) ;) (expression_statement "uVar16 = (uint)(0xffff < uVar19 + 0x8000);" (assignment_expression "uVar16 = (uint)(0xffff < uVar19 + 0x8000)" identifier = (call_expression "(uint)(0xffff < uVar19 + 0x8000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffff < uVar19 + 0x8000)" ( (binary_expression "0xffff < uVar19 + 0x8000" number_literal < (binary_expression "uVar19 + 0x8000" identifier + number_literal)) )))) ;) (break_statement "break;" break ;)) (case_statement "case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);" statement_identifier : (expression_statement "cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);" (assignment_expression "cVar13 = FUN_0029fc10(param_8,2,param_5,param_4)" identifier = (call_expression "FUN_0029fc10(param_8,2,param_5,param_4)" identifier (argument_list "(param_8,2,param_5,param_4)" ( identifier , number_literal , identifier , identifier )))) ;)) (if_statement "if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }" if (parenthesized_expression "(cVar13 != '\0')" ( (binary_expression "cVar13 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }" { (expression_statement "cVar13 = *(char *)((long)param_1 + 4);" (assignment_expression "cVar13 = *(char *)((long)param_1 + 4)" identifier = (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }" { (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;" (assignment_expression "uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18" identifier = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) })) (expression_statement "uVar36 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "uVar36 = FUN_001d7270(param_9,plVar3,uVar36)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" identifier (argument_list "(param_9,plVar3,uVar36)" ( identifier , identifier , identifier )))) ;) (if_statement "if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }" if (parenthesized_expression "(cVar13 == '\0')" ( (binary_expression "cVar13 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }" { (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;" (assignment_expression "*(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) }) (else_clause "else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }" else (compound_statement "{\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }" { (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_1 = uVar36;" (assignment_expression "*(uint *)param_1 = uVar36" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }))) })) (if_statement "if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;" if (parenthesized_expression "((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1))))" ( (binary_expression "(param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))" (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))" ( (parenthesized_expression "((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1))" ( (binary_expression "(bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)" (parenthesized_expression "(bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20))" ( (comma_expression "bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)" (assignment_expression "bVar52 = *(byte *)((long)param_8 + 0x39) >> 2" identifier = (binary_expression "*(byte *)((long)param_8 + 0x39) >> 2" (pointer_expression "*(byte *)((long)param_8 + 0x39)" * (cast_expression "(byte *)((long)param_8 + 0x39)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x39)" ( (binary_expression "(long)param_8 + 0x39" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) >> number_literal)) , (binary_expression "(bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)" (binary_expression "(bVar52 & 0x3c) != 0x3c" (parenthesized_expression "(bVar52 & 0x3c)" ( (binary_expression "bVar52 & 0x3c" identifier & number_literal) )) != number_literal) && (parenthesized_expression "((bVar52 & 0x30) != 0x20)" ( (binary_expression "(bVar52 & 0x30) != 0x20" (parenthesized_expression "(bVar52 & 0x30)" ( (binary_expression "bVar52 & 0x30" identifier & number_literal) )) != number_literal) )))) )) || (parenthesized_expression "(*(int *)((long)param_8 + 0x5c) != 1)" ( (binary_expression "*(int *)((long)param_8 + 0x5c) != 1" (pointer_expression "*(int *)((long)param_8 + 0x5c)" * (cast_expression "(int *)((long)param_8 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x5c)" ( (binary_expression "(long)param_8 + 0x5c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != number_literal) ))) )) ))) )) (break_statement "break;" break ;)) (expression_statement "lVar30 = param_8[0xe];" (assignment_expression "lVar30 = param_8[0xe]" identifier = (subscript_expression "param_8[0xe]" identifier [ number_literal ])) ;) (if_statement "if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n          if (*(char *)(param_8 + 9) == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }" { (if_statement "if (*(char *)(param_8 + 9) == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }" if (parenthesized_expression "(*(char *)(param_8 + 9) == '\0')" ( (binary_expression "*(char *)(param_8 + 9) == '\0'" (pointer_expression "*(char *)(param_8 + 9)" * (cast_expression "(char *)(param_8 + 9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 9)" ( (binary_expression "param_8 + 9" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }" { comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2e46,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;) })) (expression_statement "local_68 = FUN_00298450(lVar30,lVar30 + 8);" (assignment_expression "local_68 = FUN_00298450(lVar30,lVar30 + 8)" identifier = (call_expression "FUN_00298450(lVar30,lVar30 + 8)" identifier (argument_list "(lVar30,lVar30 + 8)" ( identifier , (binary_expression "lVar30 + 8" identifier + number_literal) )))) ;) (expression_statement "param_9 = (uint *)&local_78;" (assignment_expression "param_9 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;) })) (expression_statement "local_e8 = *(uint *)(param_8 + 0xc);" (assignment_expression "local_e8 = *(uint *)(param_8 + 0xc)" identifier = (pointer_expression "*(uint *)(param_8 + 0xc)" * (cast_expression "(uint *)(param_8 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 0xc)" ( (binary_expression "param_8 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "uVar34 = *(ulong *)(param_4 + 0x20);" (assignment_expression "uVar34 = *(ulong *)(param_4 + 0x20)" identifier = (pointer_expression "*(ulong *)(param_4 + 0x20)" * (cast_expression "(ulong *)(param_4 + 0x20)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (uVar34 != 0) goto LAB_002c6275;" if (parenthesized_expression "(uVar34 != 0)" ( (binary_expression "uVar34 != 0" identifier != number_literal) )) (goto_statement "goto LAB_002c6275;" goto statement_identifier ;)) (goto_statement "goto LAB_002c638e;" goto statement_identifier ;)) (case_statement "case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");" case number_literal : (labeled_statement "switchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");" statement_identifier : comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2e62,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;))) (case_statement "case 4:" case number_literal :) (case_statement "case 100:" case number_literal :) (case_statement "case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);" (assignment_expression "bVar51 = (bool)((!bVar49 || !bVar50) & local_e3)" identifier = (cast_expression "(bool)((!bVar49 || !bVar50) & local_e3)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "((!bVar49 || !bVar50) & local_e3)" ( (binary_expression "(!bVar49 || !bVar50) & local_e3" (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) & identifier) )))) ;) (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;" (assignment_expression "uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" identifier = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) (goto_statement "goto LAB_002c7644;" goto statement_identifier ;)) (case_statement "case 5:" case number_literal :) (case_statement "case 0x68:" case number_literal :) (case_statement "case 0x86:\n        goto switchD_002c4f87_caseD_5;" case number_literal : (goto_statement "goto switchD_002c4f87_caseD_5;" goto statement_identifier ;)) (case_statement "case 6:" case number_literal :) (case_statement "case 0x69:" case number_literal :) (case_statement "case 0x87:" case number_literal :) (case_statement "case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "local_130 = (uint)*param_10;" (assignment_expression "local_130 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;" (assignment_expression "uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8" identifier = (binary_expression "local_130 >> 0x18 | (local_130 & 0xff0000) >> 8" (binary_expression "local_130 >> 0x18" identifier >> number_literal) | (binary_expression "(local_130 & 0xff0000) >> 8" (parenthesized_expression "(local_130 & 0xff0000)" ( (binary_expression "local_130 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" identifier = identifier) ;) (labeled_statement "LAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }" statement_identifier : (if_statement "if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }" if (parenthesized_expression "(param_3 == 9)" ( (binary_expression "param_3 == 9" identifier == number_literal) )) (compound_statement "{\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }" { (expression_statement "local_108 = DAT_0067db40;" (assignment_expression "local_108 = DAT_0067db40" identifier = identifier) ;) (if_statement "if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }" if (parenthesized_expression "((undefined8 **)DAT_0067db40 != &DAT_0067db40)" ( (binary_expression "(undefined8 **)DAT_0067db40 != &DAT_0067db40" (cast_expression "(undefined8 **)DAT_0067db40" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) != (pointer_expression "&DAT_0067db40" & identifier)) )) (compound_statement "{\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }" { (do_statement "do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);" do (compound_statement "{\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            }" { (if_statement "if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }" if (parenthesized_expression "(uVar7 == *(uint *)(local_108 + 6))" ( (binary_expression "uVar7 == *(uint *)(local_108 + 6)" identifier == (pointer_expression "*(uint *)(local_108 + 6)" * (cast_expression "(uint *)(local_108 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_108 + 6)" ( (binary_expression "local_108 + 6" identifier + number_literal) ))))) )) (compound_statement "{\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }" { (expression_statement "uVar18 = *(undefined4 *)((long)local_108 + 0x2c);" (assignment_expression "uVar18 = *(undefined4 *)((long)local_108 + 0x2c)" identifier = (pointer_expression "*(undefined4 *)((long)local_108 + 0x2c)" * (cast_expression "(undefined4 *)((long)local_108 + 0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)local_108 + 0x2c)" ( (binary_expression "(long)local_108 + 0x2c" (cast_expression "(long)local_108" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (expression_statement "cVar14 = FUN_0028cc00(uVar18,uVar17);" (assignment_expression "cVar14 = FUN_0028cc00(uVar18,uVar17)" identifier = (call_expression "FUN_0028cc00(uVar18,uVar17)" identifier (argument_list "(uVar18,uVar17)" ( identifier , identifier )))) ;) (if_statement "if (cVar14 == '\0') goto LAB_002c7bc0;" if (parenthesized_expression "(cVar14 == '\0')" ( (binary_expression "cVar14 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c7bc0;" goto statement_identifier ;)) (expression_statement "uVar21 = local_108[2];" (assignment_expression "uVar21 = local_108[2]" identifier = (subscript_expression "local_108[2]" identifier [ number_literal ])) ;) (expression_statement "uVar22 = local_108[4];" (assignment_expression "uVar22 = local_108[4]" identifier = (subscript_expression "local_108[4]" identifier [ number_literal ])) ;) (expression_statement "uVar2 = *(undefined4 *)(local_108 + 5);" (assignment_expression "uVar2 = *(undefined4 *)(local_108 + 5)" identifier = (pointer_expression "*(undefined4 *)(local_108 + 5)" * (cast_expression "(undefined4 *)(local_108 + 5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_108 + 5)" ( (binary_expression "local_108 + 5" identifier + number_literal) ))))) ;) (expression_statement "uVar43 = local_108[3];" (assignment_expression "uVar43 = local_108[3]" identifier = (subscript_expression "local_108[3]" identifier [ number_literal ])) ;) (expression_statement "uVar1 = *(undefined4 *)(local_108 + 7);" (assignment_expression "uVar1 = *(undefined4 *)(local_108 + 7)" identifier = (pointer_expression "*(undefined4 *)(local_108 + 7)" * (cast_expression "(undefined4 *)(local_108 + 7)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_108 + 7)" ( (binary_expression "local_108 + 7" identifier + number_literal) ))))) ;) (expression_statement "FUN_00296ff0(uVar21,uVar18);" (call_expression "FUN_00296ff0(uVar21,uVar18)" identifier (argument_list "(uVar21,uVar18)" ( identifier , identifier ))) ;) (expression_statement "uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);" (assignment_expression "uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1)" identifier = (call_expression "FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1)" identifier (argument_list "(uVar21,uVar43,uVar22,uVar2,uVar1)" ( identifier , identifier , identifier , identifier , identifier )))) ;) (expression_statement "FUN_00293050(uVar21,uVar18,0);" (call_expression "FUN_00293050(uVar21,uVar18,0)" identifier (argument_list "(uVar21,uVar18,0)" ( identifier , identifier , number_literal ))) ;) (if_statement "if (uVar16 == 1) goto LAB_002c5940;" if (parenthesized_expression "(uVar16 == 1)" ( (binary_expression "uVar16 == 1" identifier == number_literal) )) (goto_statement "goto LAB_002c5940;" goto statement_identifier ;)) (expression_statement "puVar40 = (undefined8 *)*local_108;" (assignment_expression "puVar40 = (undefined8 *)*local_108" identifier = (cast_expression "(undefined8 *)*local_108" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_108" * identifier))) ;) (expression_statement "_DAT_0067db50 = _DAT_0067db50 + -1;" (assignment_expression "_DAT_0067db50 = _DAT_0067db50 + -1" identifier = (binary_expression "_DAT_0067db50 + -1" identifier + number_literal)) ;) (expression_statement "FUN_004a1200(local_108);" (call_expression "FUN_004a1200(local_108)" identifier (argument_list "(local_108)" ( identifier ))) ;) (expression_statement "FUN_0049e340(local_108);" (call_expression "FUN_0049e340(local_108)" identifier (argument_list "(local_108)" ( identifier ))) ;) (expression_statement "local_108 = puVar40;" (assignment_expression "local_108 = puVar40" identifier = identifier) ;) }) (else_clause "else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }" else (compound_statement "{\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }" { (labeled_statement "LAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;" statement_identifier : (expression_statement "local_108 = (undefined8 *)*local_108;" (assignment_expression "local_108 = (undefined8 *)*local_108" identifier = (cast_expression "(undefined8 *)*local_108" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_108" * identifier))) ;)) }))) }) while (parenthesized_expression "((undefined8 **)local_108 != &DAT_0067db40)" ( (binary_expression "(undefined8 **)local_108 != &DAT_0067db40" (cast_expression "(undefined8 **)local_108" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) != (pointer_expression "&DAT_0067db40" & identifier)) )) ;) })) (expression_statement "local_108 = DAT_0067db20;" (assignment_expression "local_108 = DAT_0067db20" identifier = identifier) ;) (if_statement "if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }" if (parenthesized_expression "((undefined8 **)DAT_0067db20 != &DAT_0067db20)" ( (binary_expression "(undefined8 **)DAT_0067db20 != &DAT_0067db20" (cast_expression "(undefined8 **)DAT_0067db20" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) != (pointer_expression "&DAT_0067db20" & identifier)) )) (compound_statement "{\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }" { (do_statement "do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);" do (compound_statement "{\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            }" { (if_statement "if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }" if (parenthesized_expression "(uVar7 == *(uint *)(local_108 + 6))" ( (binary_expression "uVar7 == *(uint *)(local_108 + 6)" identifier == (pointer_expression "*(uint *)(local_108 + 6)" * (cast_expression "(uint *)(local_108 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_108 + 6)" ( (binary_expression "local_108 + 6" identifier + number_literal) ))))) )) (compound_statement "{\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }" { (expression_statement "uVar18 = *(undefined4 *)((long)local_108 + 0x2c);" (assignment_expression "uVar18 = *(undefined4 *)((long)local_108 + 0x2c)" identifier = (pointer_expression "*(undefined4 *)((long)local_108 + 0x2c)" * (cast_expression "(undefined4 *)((long)local_108 + 0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)local_108 + 0x2c)" ( (binary_expression "(long)local_108 + 0x2c" (cast_expression "(long)local_108" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (expression_statement "cVar14 = FUN_0028cc00(uVar18,uVar17);" (assignment_expression "cVar14 = FUN_0028cc00(uVar18,uVar17)" identifier = (call_expression "FUN_0028cc00(uVar18,uVar17)" identifier (argument_list "(uVar18,uVar17)" ( identifier , identifier )))) ;) (if_statement "if (cVar14 == '\0') goto LAB_002c7d70;" if (parenthesized_expression "(cVar14 == '\0')" ( (binary_expression "cVar14 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c7d70;" goto statement_identifier ;)) (expression_statement "uVar21 = local_108[2];" (assignment_expression "uVar21 = local_108[2]" identifier = (subscript_expression "local_108[2]" identifier [ number_literal ])) ;) (expression_statement "uVar2 = *(undefined4 *)(local_108 + 5);" (assignment_expression "uVar2 = *(undefined4 *)(local_108 + 5)" identifier = (pointer_expression "*(undefined4 *)(local_108 + 5)" * (cast_expression "(undefined4 *)(local_108 + 5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_108 + 5)" ( (binary_expression "local_108 + 5" identifier + number_literal) ))))) ;) (expression_statement "uVar22 = local_108[3];" (assignment_expression "uVar22 = local_108[3]" identifier = (subscript_expression "local_108[3]" identifier [ number_literal ])) ;) (expression_statement "uVar43 = local_108[4];" (assignment_expression "uVar43 = local_108[4]" identifier = (subscript_expression "local_108[4]" identifier [ number_literal ])) ;) (expression_statement "uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);" (assignment_expression "uVar34 = (ulong)*(byte *)((long)local_108 + 0x34)" identifier = (binary_expression "(ulong)*(byte *)((long)local_108 + 0x34)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(byte *)((long)local_108 + 0x34)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)local_108 + 0x34)" ( (binary_expression "(long)local_108 + 0x34" (cast_expression "(long)local_108" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (expression_statement "FUN_00296ff0(uVar21,uVar18);" (call_expression "FUN_00296ff0(uVar21,uVar18)" identifier (argument_list "(uVar21,uVar18)" ( identifier , identifier ))) ;) (expression_statement "uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);" (assignment_expression "uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1)" identifier = (call_expression "FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1)" identifier (argument_list "(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1)" ( identifier , identifier , identifier , identifier , (binary_expression "uVar34 & 0xff" identifier & number_literal) , identifier , identifier , identifier , identifier )))) ;) (expression_statement "FUN_00293050(uVar21,uVar18,0);" (call_expression "FUN_00293050(uVar21,uVar18,0)" identifier (argument_list "(uVar21,uVar18,0)" ( identifier , identifier , number_literal ))) ;) (if_statement "if (uVar16 == 1) goto LAB_002c5940;" if (parenthesized_expression "(uVar16 == 1)" ( (binary_expression "uVar16 == 1" identifier == number_literal) )) (goto_statement "goto LAB_002c5940;" goto statement_identifier ;)) (expression_statement "puVar40 = (undefined8 *)*local_108;" (assignment_expression "puVar40 = (undefined8 *)*local_108" identifier = (cast_expression "(undefined8 *)*local_108" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_108" * identifier))) ;) (expression_statement "_DAT_0067db30 = _DAT_0067db30 + -1;" (assignment_expression "_DAT_0067db30 = _DAT_0067db30 + -1" identifier = (binary_expression "_DAT_0067db30 + -1" identifier + number_literal)) ;) (expression_statement "FUN_004a1200(local_108);" (call_expression "FUN_004a1200(local_108)" identifier (argument_list "(local_108)" ( identifier ))) ;) (expression_statement "FUN_0049e340(local_108);" (call_expression "FUN_0049e340(local_108)" identifier (argument_list "(local_108)" ( identifier ))) ;) (expression_statement "local_108 = puVar40;" (assignment_expression "local_108 = puVar40" identifier = identifier) ;) }) (else_clause "else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }" else (compound_statement "{\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }" { (labeled_statement "LAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;" statement_identifier : (expression_statement "local_108 = (undefined8 *)*local_108;" (assignment_expression "local_108 = (undefined8 *)*local_108" identifier = (cast_expression "(undefined8 *)*local_108" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_108" * identifier))) ;)) }))) }) while (parenthesized_expression "((undefined8 **)local_108 != &DAT_0067db20)" ( (binary_expression "(undefined8 **)local_108 != &DAT_0067db20" (cast_expression "(undefined8 **)local_108" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) != (pointer_expression "&DAT_0067db20" & identifier)) )) ;) })) }))) (if_statement "if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }" if (parenthesized_expression "(cVar12 == '\0')" ( (binary_expression "cVar12 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }" { (expression_statement "uVar19 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "uVar19 = FUN_001d7270(param_9,plVar3,uVar19)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" identifier (argument_list "(param_9,plVar3,uVar19)" ( identifier , identifier , identifier )))) ;) }) (else_clause "else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }" else (compound_statement "{\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }" { (expression_statement "lVar30 = *(long *)(param_4 + 0x28);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x28)" identifier = (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" if (parenthesized_expression "(uVar17 == 0x69)" ( (binary_expression "uVar17 == 0x69" identifier == number_literal) )) (compound_statement "{\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }" { (if_statement "if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n              iVar38 = 0;\n            }" { (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) }) (else_clause "else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" else (compound_statement "{\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" { (expression_statement "iVar38 = *(int *)(lVar30 + 0x40);" (assignment_expression "iVar38 = *(int *)(lVar30 + 0x40)" identifier = (pointer_expression "*(int *)(lVar30 + 0x40)" * (cast_expression "(int *)(lVar30 + 0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x40)" ( (binary_expression "lVar30 + 0x40" identifier + number_literal) ))))) ;) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" if (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" ( (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" ( (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" ( (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" * (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" ( (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(plVar3[0x6e] != 0)" ( (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" { (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier = (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier + (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" * (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x6e] + 0x10c)" ( (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) + number_literal) )))))) ;) })) }))) (expression_statement "iVar38 = iVar38 - (param_11 & 0xfffffffc);" (assignment_expression "iVar38 = iVar38 - (param_11 & 0xfffffffc)" identifier = (binary_expression "iVar38 - (param_11 & 0xfffffffc)" identifier - (parenthesized_expression "(param_11 & 0xfffffffc)" ( (binary_expression "param_11 & 0xfffffffc" identifier & number_literal) )))) ;) }) (else_clause "else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" else (if_statement "if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" if (parenthesized_expression "((uVar17 == 0x87) || (uVar17 == 0x9d))" ( (binary_expression "(uVar17 == 0x87) || (uVar17 == 0x9d)" (parenthesized_expression "(uVar17 == 0x87)" ( (binary_expression "uVar17 == 0x87" identifier == number_literal) )) || (parenthesized_expression "(uVar17 == 0x9d)" ( (binary_expression "uVar17 == 0x9d" identifier == number_literal) ))) )) (compound_statement "{\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }" { (if_statement "if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n              iVar38 = 0;\n            }" { (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) }) (else_clause "else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" else (compound_statement "{\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" { (expression_statement "iVar38 = *(int *)(lVar30 + 0x40);" (assignment_expression "iVar38 = *(int *)(lVar30 + 0x40)" identifier = (pointer_expression "*(int *)(lVar30 + 0x40)" * (cast_expression "(int *)(lVar30 + 0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x40)" ( (binary_expression "lVar30 + 0x40" identifier + number_literal) ))))) ;) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" if (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" ( (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" ( (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" ( (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" * (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" ( (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(plVar3[0x6e] != 0)" ( (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" { (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier = (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier + (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" * (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x6e] + 0x10c)" ( (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) + number_literal) )))))) ;) })) }))) (expression_statement "iVar38 = (iVar38 - param_11) + 3;" (assignment_expression "iVar38 = (iVar38 - param_11) + 3" identifier = (binary_expression "(iVar38 - param_11) + 3" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) ;) }) (else_clause "else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" else (compound_statement "{\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" { (if_statement "if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n              iVar38 = 0;\n            }" { (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) }) (else_clause "else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" else (compound_statement "{\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" { (expression_statement "iVar38 = *(int *)(lVar30 + 0x40);" (assignment_expression "iVar38 = *(int *)(lVar30 + 0x40)" identifier = (pointer_expression "*(int *)(lVar30 + 0x40)" * (cast_expression "(int *)(lVar30 + 0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x40)" ( (binary_expression "lVar30 + 0x40" identifier + number_literal) ))))) ;) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" if (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" ( (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" ( (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" ( (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" * (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" ( (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(plVar3[0x6e] != 0)" ( (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" { (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier = (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier + (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" * (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x6e] + 0x10c)" ( (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) + number_literal) )))))) ;) })) }))) (expression_statement "iVar38 = (iVar38 - param_11) + 4;" (assignment_expression "iVar38 = (iVar38 - param_11) + 4" identifier = (binary_expression "(iVar38 - param_11) + 4" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) ;) }))))) (expression_statement "uVar19 = iVar38 + uVar19;" (assignment_expression "uVar19 = iVar38 + uVar19" identifier = (binary_expression "iVar38 + uVar19" identifier + identifier)) ;) }))) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;" (assignment_expression "*(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "(((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130" (parenthesized_expression "(((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18)" ( (binary_expression "((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18" (binary_expression "((uVar19 ^ uVar45) & 0xff00) << 8" (parenthesized_expression "((uVar19 ^ uVar45) & 0xff00)" ( (binary_expression "(uVar19 ^ uVar45) & 0xff00" (parenthesized_expression "(uVar19 ^ uVar45)" ( (binary_expression "uVar19 ^ uVar45" identifier ^ identifier) )) & number_literal) )) << number_literal) | (binary_expression "(uVar19 ^ uVar45) << 0x18" (parenthesized_expression "(uVar19 ^ uVar45)" ( (binary_expression "uVar19 ^ uVar45" identifier ^ identifier) )) << number_literal)) )) ^ identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 7:" case number_literal :) (case_statement "case 8:" case number_literal :) (case_statement "case 0x65:" case number_literal :) (case_statement "case 0x88:" case number_literal :) (case_statement "case 0x89:" case number_literal :) (case_statement "case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;" case number_literal : (expression_statement "lVar30 = *(long *)(param_4 + 0x28);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x28)" identifier = (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }" { (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);" statement_identifier : (expression_statement "iVar38 = *(int *)(lVar30 + 0x40);" (assignment_expression "iVar38 = *(int *)(lVar30 + 0x40)" identifier = (pointer_expression "*(int *)(lVar30 + 0x40)" * (cast_expression "(int *)(lVar30 + 0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x40)" ( (binary_expression "lVar30 + 0x40" identifier + number_literal) ))))) ;)) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" if (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" ( (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" ( (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" ( (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" * (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" ( (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(plVar3[0x6e] != 0)" ( (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" { (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier = (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier + (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" * (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x6e] + 0x10c)" ( (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) + number_literal) )))))) ;) })) (goto_statement "goto LAB_002c7297;" goto statement_identifier ;) })) (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;" (assignment_expression "uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" identifier = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" identifier = identifier) ;) (labeled_statement "LAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);" statement_identifier : (expression_statement "iVar20 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "iVar20 = FUN_001d7270(param_9,plVar3,uVar36)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" identifier (argument_list "(param_9,plVar3,uVar36)" ( identifier , identifier , identifier )))) ;)) (expression_statement "uVar19 = iVar20 - iVar38;" (assignment_expression "uVar19 = iVar20 - iVar38" identifier = (binary_expression "iVar20 - iVar38" identifier - identifier)) ;) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }" { (expression_statement "uVar19 = uVar19 + (int)plVar3[0x6d];" (assignment_expression "uVar19 = uVar19 + (int)plVar3[0x6d]" identifier = (binary_expression "uVar19 + (int)plVar3[0x6d]" identifier + (cast_expression "(int)plVar3[0x6d]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar3[0x6d]" identifier [ number_literal ])))) ;) })) (expression_statement "uVar36 = (uVar19 ^ uVar45) & 0xffff;" (assignment_expression "uVar36 = (uVar19 ^ uVar45) & 0xffff" identifier = (binary_expression "(uVar19 ^ uVar45) & 0xffff" (parenthesized_expression "(uVar19 ^ uVar45)" ( (binary_expression "uVar19 ^ uVar45" identifier ^ identifier) )) & number_literal)) ;) (if_statement "if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }" if (parenthesized_expression "(uVar17 == 0xac)" ( (binary_expression "uVar17 == 0xac" identifier == number_literal) )) (compound_statement "{\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }" { (expression_statement "uVar36 = (uVar19 ^ uVar45) & 0x7f;" (assignment_expression "uVar36 = (uVar19 ^ uVar45) & 0x7f" identifier = (binary_expression "(uVar19 ^ uVar45) & 0x7f" (parenthesized_expression "(uVar19 ^ uVar45)" ( (binary_expression "uVar19 ^ uVar45" identifier ^ identifier) )) & number_literal)) ;) })) (expression_statement "uVar36 = uVar45 ^ uVar36;" (assignment_expression "uVar36 = uVar45 ^ uVar36" identifier = (binary_expression "uVar45 ^ uVar36" identifier ^ identifier)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "*(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;" (assignment_expression "*(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar45 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) (if_statement "if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }" if (parenthesized_expression "(0xffff < uVar19 + 0x8000)" ( (binary_expression "0xffff < uVar19 + 0x8000" number_literal < (binary_expression "uVar19 + 0x8000" identifier + number_literal)) )) (compound_statement "{\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }" { (expression_statement "uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );" (assignment_expression "uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          )" identifier = (call_expression "gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          )" identifier (argument_list "(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          )" ( (string_literal ""small-data section exceeds 64KB; lower small-data size limit (see option -G)"" " string_content ") )))) ;) (expression_statement "FUN_0034a750(uVar21);" (call_expression "FUN_0034a750(uVar21)" identifier (argument_list "(uVar21)" ( identifier ))) ;) (goto_statement "goto LAB_002c7359;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c5c87;" goto statement_identifier ;)) (case_statement "case 9:" case number_literal :) (case_statement "case 0x66:" case number_literal :) (case_statement "case 0x8a:\n        goto switchD_002c4f87_caseD_9;" case number_literal : (goto_statement "goto switchD_002c4f87_caseD_9;" goto statement_identifier ;)) (case_statement "case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6a55:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal))) ;) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar36 * 4;" (assignment_expression "uVar19 = uVar36 * 4" identifier = (binary_expression "uVar36 * 4" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0x3fffc;" (assignment_expression "uVar45 = uVar19 & 0x3fffc" identifier = (binary_expression "uVar19 & 0x3fffc" identifier & number_literal)) ;) (expression_statement "uVar16 = uVar45 - 0x40000;" (assignment_expression "uVar16 = uVar45 - 0x40000" identifier = (binary_expression "uVar45 - 0x40000" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x20000) == 0)" ( (binary_expression "(uVar19 & 0x20000) == 0" (parenthesized_expression "(uVar19 & 0x20000)" ( (binary_expression "uVar19 & 0x20000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar16 = uVar45;\n          }" { (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11 >> 2;" (assignment_expression "uVar19 = iVar38 - param_11 >> 2" identifier = (binary_expression "iVar38 - param_11 >> 2" (binary_expression "iVar38 - param_11" identifier - identifier) >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" identifier = (binary_expression "uVar36 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;" (assignment_expression "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar16 = 3;" (assignment_expression "uVar16 = 3" identifier = number_literal) ;) (if_statement "if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }" if (parenthesized_expression "((uVar34 & 3) == 0)" ( (binary_expression "(uVar34 & 3) == 0" (parenthesized_expression "(uVar34 & 3)" ( (binary_expression "uVar34 & 3" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }" { (expression_statement "uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);" (assignment_expression "uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000)" identifier = (call_expression "(uint)(0x3ffff < (iVar38 - param_11) + 0x20000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0x3ffff < (iVar38 - param_11) + 0x20000)" ( (binary_expression "0x3ffff < (iVar38 - param_11) + 0x20000" number_literal < (binary_expression "(iVar38 - param_11) + 0x20000" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) )))) ;) })) (break_statement "break;" break ;)) (case_statement "case 0xb:" case number_literal :) (case_statement "case 0x67:" case number_literal :) (case_statement "case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }" statement_identifier : (if_statement "if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }" { (labeled_statement "LAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");" statement_identifier : comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2f3d,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;)) }))) (if_statement "if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }" if (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" ( (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }" { (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_002c82dc;" goto statement_identifier ;) })) (expression_statement "local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3)" identifier = (call_expression "FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3)" identifier (argument_list "(*(long *)(param_4 + 0x20),param_8,0,plVar3)" ( (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) , identifier , number_literal , identifier )))) ;) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }" { (labeled_statement "LAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);" statement_identifier : (expression_statement "uVar36 = FUN_00292520(lVar30,local_e8,plVar3);" (assignment_expression "uVar36 = FUN_00292520(lVar30,local_e8,plVar3)" identifier = (call_expression "FUN_00292520(lVar30,local_e8,plVar3)" identifier (argument_list "(lVar30,local_e8,plVar3)" ( identifier , identifier , identifier )))) ;)) (if_statement "if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;" if (parenthesized_expression "(*(char *)((long)param_1 + 4) != '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) != '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c67b0;" goto statement_identifier ;)) (expression_statement "uVar16 = (uint)*param_10;" (assignment_expression "uVar16 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;" (assignment_expression "uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36" identifier = (binary_expression "(uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36" (parenthesized_expression "(uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8)" ( (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" ( (binary_expression "uVar16 & 0xff0000" identifier & number_literal) )) >> number_literal)) )) ^ identifier)) ;) (expression_statement "*(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;" (assignment_expression "*(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16" (parenthesized_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" ( (binary_expression "(uVar19 & 0xff00) << 8 | uVar19 << 0x18" (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" ( (binary_expression "uVar19 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar19 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (expression_statement "uVar16 = (uint)(0xffff < uVar36 + 0x8000);" (assignment_expression "uVar16 = (uint)(0xffff < uVar36 + 0x8000)" identifier = (call_expression "(uint)(0xffff < uVar36 + 0x8000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffff < uVar36 + 0x8000)" ( (binary_expression "0xffff < uVar36 + 0x8000" number_literal < (binary_expression "uVar36 + 0x8000" identifier + number_literal)) )))) ;) (goto_statement "goto LAB_002c624f;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c81f0;" goto statement_identifier ;)) (case_statement "case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" statement_identifier : (if_statement "if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" if (parenthesized_expression "(*(long *)(param_4 + 0x28) == 0)" ( (binary_expression "*(long *)(param_4 + 0x28) == 0" (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          iVar38 = 0;\n        }" { (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) }) (else_clause "else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" else (compound_statement "{\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" { (expression_statement "iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);" (assignment_expression "iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40)" identifier = (pointer_expression "*(int *)(*(long *)(param_4 + 0x28) + 0x40)" * (cast_expression "(int *)(*(long *)(param_4 + 0x28) + 0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x28) + 0x40)" ( (binary_expression "*(long *)(param_4 + 0x28) + 0x40" (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) )))) + number_literal) ))))) ;) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" if (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" ( (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" ( (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" ( (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" * (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" ( (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(plVar3[0x6e] != 0)" ( (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" { (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier = (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier + (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" * (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x6e] + 0x10c)" ( (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) + number_literal) )))))) ;) })) })))) (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;" (assignment_expression "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (if_statement "if (bVar48 == false) {\n          uVar17 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar17 = local_c8;\n        }" { (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar20 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "iVar20 = FUN_001d7270(param_9,plVar3,uVar17)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" identifier (argument_list "(param_9,plVar3,uVar17)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;" (assignment_expression "uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38" identifier = (binary_expression "(iVar20 + (int)plVar3[0x6d]) - iVar38" (parenthesized_expression "(iVar20 + (int)plVar3[0x6d])" ( (binary_expression "iVar20 + (int)plVar3[0x6d]" identifier + (cast_expression "(int)plVar3[0x6d]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar3[0x6d]" identifier [ number_literal ]))) )) - identifier)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (labeled_statement "LAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;" statement_identifier : (expression_statement "uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;" (assignment_expression "uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18" identifier = (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18" (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8" (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8" (binary_expression "uVar19 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" ( (binary_expression "uVar19 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" ( (binary_expression "uVar19 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar19 << 0x18" identifier << number_literal))) ;)) (expression_statement "puVar37 = param_10;" (assignment_expression "puVar37 = param_10" identifier = identifier) ;) (goto_statement "goto LAB_002c5c85;" goto statement_identifier ;)) (case_statement "case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);" statement_identifier : (expression_statement "cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);" (assignment_expression "cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4)" identifier = (call_expression "FUN_0029fc10(param_8,0x12,param_5,param_4)" identifier (argument_list "(param_8,0x12,param_5,param_4)" ( identifier , number_literal , identifier , identifier )))) ;)) (if_statement "if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }" if (parenthesized_expression "(cVar13 != '\0')" ( (binary_expression "cVar13 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }" { (expression_statement "uVar34 = (ulong)local_c8;" (assignment_expression "uVar34 = (ulong)local_c8" identifier = (cast_expression "(ulong)local_c8" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "cVar13 = *(char *)((long)param_1 + 4);" (assignment_expression "cVar13 = *(char *)((long)param_1 + 4)" identifier = (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (if_statement "if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }" { (expression_statement "uVar34 = *param_10;" (assignment_expression "uVar34 = *param_10" identifier = (pointer_expression "*param_10" * identifier)) ;) (expression_statement "uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;" (assignment_expression "uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38" identifier = (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28" (binary_expression "uVar34 >> 0x38" identifier >> number_literal) | (binary_expression "(uVar34 & 0xff000000000000) >> 0x28" (parenthesized_expression "(uVar34 & 0xff000000000000)" ( (binary_expression "uVar34 & 0xff000000000000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar34 & 0xff0000000000) >> 0x18" (parenthesized_expression "(uVar34 & 0xff0000000000)" ( (binary_expression "uVar34 & 0xff0000000000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar34 & 0xff00000000) >> 8" (parenthesized_expression "(uVar34 & 0xff00000000)" ( (binary_expression "uVar34 & 0xff00000000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar34 & 0xff000000) << 8" (parenthesized_expression "(uVar34 & 0xff000000)" ( (binary_expression "uVar34 & 0xff000000" identifier & number_literal) )) << number_literal)) | (binary_expression "(uVar34 & 0xff0000) << 0x18" (parenthesized_expression "(uVar34 & 0xff0000)" ( (binary_expression "uVar34 & 0xff0000" identifier & number_literal) )) << number_literal)) | (binary_expression "(uVar34 & 0xff00) << 0x28" (parenthesized_expression "(uVar34 & 0xff00)" ( (binary_expression "uVar34 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar34 << 0x38" identifier << number_literal))) ;) })) (goto_statement "goto LAB_002c6b22;" goto statement_identifier ;) })) (break_statement "break;" break ;)) (case_statement "case 0x13:" case number_literal :) (case_statement "case 0x91:" case number_literal :) (case_statement "case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }" if (parenthesized_expression "(param_8 != (undefined8 *)0x0)" ( (binary_expression "param_8 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }" { (if_statement "if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }" { (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3)" identifier = (call_expression "FUN_0029b910(lVar30,param_8,0,plVar3)" identifier (argument_list "(lVar30,param_8,0,plVar3)" ( identifier , identifier , number_literal , identifier )))) ;) (goto_statement "goto LAB_002c6043;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c827b;" goto statement_identifier ;) })) (if_statement "if (lVar30 == 0) goto LAB_002c8364;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c8364;" goto statement_identifier ;)) (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" identifier = (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" ( (pointer_expression "**(code **)(*plVar3 + 0x160)" * (pointer_expression "*(code **)(*plVar3 + 0x160)" * (cast_expression "(code **)(*plVar3 + 0x160)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*plVar3 + 0x160)" ( (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" * identifier) + number_literal) ))))) )) (argument_list "(plVar3,uVar7,0,(long)(int)local_c8)" ( identifier , identifier , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (labeled_statement "LAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;" statement_identifier : (if_statement "if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;" if (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" ( (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_002c8276;" goto statement_identifier ;))) (expression_statement "uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);" (assignment_expression "uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" identifier = (call_expression "FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" identifier (argument_list "(*(long *)(param_4 + 0x20),local_e8,plVar3)" ( (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) , identifier , identifier )))) ;) (if_statement "if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }" if (parenthesized_expression "(uVar17 == 0xf9)" ( (binary_expression "uVar17 == 0xf9" identifier == number_literal) )) (compound_statement "{\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }" { (expression_statement "puVar37 = param_1;" (assignment_expression "puVar37 = param_1" identifier = identifier) ;) (if_statement "if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;" if (parenthesized_expression "(*(char *)((long)param_1 + 4) == '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) == '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c5ccb;" goto statement_identifier ;)) (goto_statement "goto LAB_002c5c85;" goto statement_identifier ;) })) (if_statement "if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;" if (parenthesized_expression "(*(char *)((long)param_1 + 4) != '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) != '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (goto_statement "goto LAB_002c6098;" goto statement_identifier ;)) (case_statement "case 0x14:" case number_literal :) (case_statement "case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar16 = local_c8;\n        }" { (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) })) (expression_statement "FUN_001d7270(param_9,plVar3,uVar16);" (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier ))) ;) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }" { (if_statement "if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }" if (parenthesized_expression "(*(long *)(lVar30 + 0xd0) == 0)" ( (binary_expression "*(long *)(lVar30 + 0xd0) == 0" (pointer_expression "*(long *)(lVar30 + 0xd0)" * (cast_expression "(long *)(lVar30 + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0xd0)" ( (binary_expression "lVar30 + 0xd0" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n            lVar30 = *(long *)(lVar30 + 200);\n          }" { (expression_statement "lVar30 = *(long *)(lVar30 + 200);" (assignment_expression "lVar30 = *(long *)(lVar30 + 200)" identifier = (pointer_expression "*(long *)(lVar30 + 200)" * (cast_expression "(long *)(lVar30 + 200)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 200)" ( (binary_expression "lVar30 + 200" identifier + number_literal) ))))) ;) }) (else_clause "else {\n            lVar30 = plVar3[0x6e];\n          }" else (compound_statement "{\n            lVar30 = plVar3[0x6e];\n          }" { (expression_statement "lVar30 = plVar3[0x6e];" (assignment_expression "lVar30 = plVar3[0x6e]" identifier = (subscript_expression "plVar3[0x6e]" identifier [ number_literal ])) ;) }))) (if_statement "if (lVar30 == 0) goto LAB_002c8285;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c8285;" goto statement_identifier ;)) (expression_statement "uVar18 = FUN_002c47d0();" (assignment_expression "uVar18 = FUN_002c47d0()" identifier = (call_expression "FUN_002c47d0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;" if (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" ( (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_002c8280;" goto statement_identifier ;)) (expression_statement "uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);" (assignment_expression "uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3)" identifier = (call_expression "FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3)" identifier (argument_list "(*(long *)(param_4 + 0x20),uVar18,plVar3)" ( (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) , identifier , identifier )))) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" identifier = (binary_expression "uVar36 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;" (assignment_expression "uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" identifier = (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (goto_statement "goto LAB_002c60ab;" goto statement_identifier ;) })) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_002c81a2:\n        FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (goto_statement "goto LAB_002c81a7;" goto statement_identifier ;)) (case_statement "case 0x15:" case number_literal :) (case_statement "case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar19 = uVar36;" (assignment_expression "uVar19 = uVar36" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\n          uVar19 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar19 = local_c8;\n        }" { (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" identifier = identifier) ;) })) (if_statement "if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }" if (parenthesized_expression "(local_e2 != 0)" ( (binary_expression "local_e2 != 0" identifier != number_literal) )) (compound_statement "{\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }" { (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar19)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" identifier (argument_list "(param_9,plVar3,uVar19)" ( identifier , identifier , identifier )))) ;) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }" { (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) (goto_statement "goto LAB_002c6ed9;" goto statement_identifier ;) })) (if_statement "if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }" if (parenthesized_expression "(*(long *)(lVar30 + 0xd0) == 0)" ( (binary_expression "*(long *)(lVar30 + 0xd0) == 0" (pointer_expression "*(long *)(lVar30 + 0xd0)" * (cast_expression "(long *)(lVar30 + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0xd0)" ( (binary_expression "lVar30 + 0xd0" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n            lVar30 = *(long *)(lVar30 + 200);\n          }" { (expression_statement "lVar30 = *(long *)(lVar30 + 200);" (assignment_expression "lVar30 = *(long *)(lVar30 + 200)" identifier = (pointer_expression "*(long *)(lVar30 + 200)" * (cast_expression "(long *)(lVar30 + 200)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 200)" ( (binary_expression "lVar30 + 200" identifier + number_literal) ))))) ;) }) (else_clause "else {\n            lVar30 = plVar3[0x6e];\n          }" else (compound_statement "{\n            lVar30 = plVar3[0x6e];\n          }" { (expression_statement "lVar30 = plVar3[0x6e];" (assignment_expression "lVar30 = plVar3[0x6e]" identifier = (subscript_expression "plVar3[0x6e]" identifier [ number_literal ])) ;) }))) (if_statement "if (lVar30 == 0) goto LAB_002c82c4;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c82c4;" goto statement_identifier ;)) (expression_statement "FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);" (call_expression "FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000)" identifier (argument_list "(lVar30,iVar38 + 0x8000U & 0xffff0000)" ( identifier , (binary_expression "iVar38 + 0x8000U & 0xffff0000" (binary_expression "iVar38 + 0x8000U" identifier + number_literal) & number_literal) ))) ;) (expression_statement "iVar20 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "iVar20 = FUN_001d7270(param_9,plVar3,uVar19)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" identifier (argument_list "(param_9,plVar3,uVar19)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);" (assignment_expression "uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000)" identifier = (binary_expression "iVar20 - (iVar38 + 0x8000U & 0xffff0000)" identifier - (parenthesized_expression "(iVar38 + 0x8000U & 0xffff0000)" ( (binary_expression "iVar38 + 0x8000U & 0xffff0000" (binary_expression "iVar38 + 0x8000U" identifier + number_literal) & number_literal) )))) ;) })) (if_statement "if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (compound_statement "{\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }" { (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_1 = uVar19;" (assignment_expression "*(uint *)param_1 = uVar19" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }) (else_clause "else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }" else (compound_statement "{\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }" { (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" identifier = (binary_expression "uVar36 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;" (assignment_expression "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (expression_statement "uVar16 = (uint)(0xffff < uVar19 + 0x8000);" (assignment_expression "uVar16 = (uint)(0xffff < uVar19 + 0x8000)" identifier = (call_expression "(uint)(0xffff < uVar19 + 0x8000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffff < uVar19 + 0x8000)" ( (binary_expression "0xffff < uVar19 + 0x8000" number_literal < (binary_expression "uVar19 + 0x8000" identifier + number_literal)) )))) ;) }))) (break_statement "break;" break ;)) (case_statement "case 0x16:" case number_literal :) (case_statement "case 0x1e:" case number_literal :) (case_statement "case 0x94:" case number_literal :) (case_statement "case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }" { (if_statement "if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }" { (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" identifier = (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" ( (pointer_expression "**(code **)(*plVar3 + 0x160)" * (pointer_expression "*(code **)(*plVar3 + 0x160)" * (cast_expression "(code **)(*plVar3 + 0x160)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*plVar3 + 0x160)" ( (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" * identifier) + number_literal) ))))) )) (argument_list "(plVar3,uVar7,0,(long)(int)local_c8)" ( identifier , identifier , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (goto_statement "goto LAB_002c5e6e;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c81a2;" goto statement_identifier ;) })) (if_statement "if (lVar30 == 0) goto LAB_002c8271;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c8271;" goto statement_identifier ;)) (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3)" identifier = (call_expression "FUN_0029b910(lVar30,param_8,0,plVar3)" identifier (argument_list "(lVar30,param_8,0,plVar3)" ( identifier , identifier , number_literal , identifier )))) ;) (labeled_statement "LAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;" statement_identifier : (if_statement "if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;" if (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" ( (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_002c826c;" goto statement_identifier ;))) (expression_statement "iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);" (assignment_expression "iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" identifier = (call_expression "FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" identifier (argument_list "(*(long *)(param_4 + 0x20),local_e8,plVar3)" ( (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) , identifier , identifier )))) ;) (expression_statement "uVar36 = iVar38 + 0x8000U >> 0x10;" (assignment_expression "uVar36 = iVar38 + 0x8000U >> 0x10" identifier = (binary_expression "iVar38 + 0x8000U >> 0x10" (binary_expression "iVar38 + 0x8000U" identifier + number_literal) >> number_literal)) ;) (if_statement "if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }" if (parenthesized_expression "(*(char *)((long)param_1 + 4) == '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) == '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }" { (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = (uint)*param_10;" (assignment_expression "uVar19 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);" (assignment_expression "uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8)" identifier = (binary_expression "uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8)" identifier ^ (parenthesized_expression "(uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8)" ( (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8" (binary_expression "uVar19 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" ( (binary_expression "uVar19 & 0xff0000" identifier & number_literal) )) >> number_literal)) )))) ;) (expression_statement "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;" (assignment_expression "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (goto_statement "goto LAB_002c624f;" goto statement_identifier ;) })) (labeled_statement "LAB_002c67b0:\n        *(uint *)param_1 = uVar36;" statement_identifier : (expression_statement "*(uint *)param_1 = uVar36;" (assignment_expression "*(uint *)param_1 = uVar36" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (labeled_statement "LAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }" statement_identifier : (if_statement "if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }" if (parenthesized_expression "(local_e1 != false)" ( (binary_expression "local_e1 != false" identifier != false) )) (compound_statement "{\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }" { (expression_statement "uVar34 = *(ulong *)(param_4 + 0x20);" (assignment_expression "uVar34 = *(ulong *)(param_4 + 0x20)" identifier = (pointer_expression "*(ulong *)(param_4 + 0x20)" * (cast_expression "(ulong *)(param_4 + 0x20)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }" if (parenthesized_expression "(uVar34 == 0)" ( (binary_expression "uVar34 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }" { (labeled_statement "LAB_002c638e:\n            FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "switchD_002c4f87_caseD_5:\n            bVar48 = false;" statement_identifier : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;)) (labeled_statement "switchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }" statement_identifier : (if_statement "if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }" if (parenthesized_expression "(param_3 == 4)" ( (binary_expression "param_3 == 4" identifier == number_literal) )) (compound_statement "{\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }" { (expression_statement "uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);" (assignment_expression "uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1)" identifier = (call_expression "FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1)" identifier (argument_list "(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1)" ( identifier , identifier , identifier , identifier , identifier , identifier , identifier , identifier , number_literal , identifier , (binary_expression "uVar34 & 0xff" identifier & number_literal) , identifier )))) ;) }) (else_clause "else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }" else (compound_statement "{\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }" { (if_statement "if (param_3 != 9) goto LAB_002c81f5;" if (parenthesized_expression "(param_3 != 9)" ( (binary_expression "param_3 != 9" identifier != number_literal) )) (goto_statement "goto LAB_002c81f5;" goto statement_identifier ;)) (expression_statement "lVar30 = FUN_0049cb70(0x40);" (assignment_expression "lVar30 = FUN_0049cb70(0x40)" identifier = (call_expression "FUN_0049cb70(0x40)" identifier (argument_list "(0x40)" ( number_literal )))) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(ulong **)(lVar30 + 0x10) = param_10;" (assignment_expression "*(ulong **)(lVar30 + 0x10) = param_10" (pointer_expression "*(ulong **)(lVar30 + 0x10)" * (cast_expression "(ulong **)(lVar30 + 0x10)" ( (type_descriptor "ulong **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x10)" ( (binary_expression "lVar30 + 0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(long **)(lVar30 + 0x18) = plVar3;" (assignment_expression "*(long **)(lVar30 + 0x18) = plVar3" (pointer_expression "*(long **)(lVar30 + 0x18)" * (cast_expression "(long **)(lVar30 + 0x18)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x18)" ( (binary_expression "lVar30 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(lVar30 + 0x20) = param_9;" (assignment_expression "*(uint **)(lVar30 + 0x20) = param_9" (pointer_expression "*(uint **)(lVar30 + 0x20)" * (cast_expression "(uint **)(lVar30 + 0x20)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x28) = local_c8;" (assignment_expression "*(uint *)(lVar30 + 0x28) = local_c8" (pointer_expression "*(uint *)(lVar30 + 0x28)" * (cast_expression "(uint *)(lVar30 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x28)" ( (binary_expression "lVar30 + 0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x2c) = uVar17;" (assignment_expression "*(uint *)(lVar30 + 0x2c) = uVar17" (pointer_expression "*(uint *)(lVar30 + 0x2c)" * (cast_expression "(uint *)(lVar30 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x2c)" ( (binary_expression "lVar30 + 0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x30) = uVar7;" (assignment_expression "*(uint *)(lVar30 + 0x30) = uVar7" (pointer_expression "*(uint *)(lVar30 + 0x30)" * (cast_expression "(uint *)(lVar30 + 0x30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x30)" ( (binary_expression "lVar30 + 0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(bool *)(lVar30 + 0x34) = bVar48;" (assignment_expression "*(bool *)(lVar30 + 0x34) = bVar48" (pointer_expression "*(bool *)(lVar30 + 0x34)" * (cast_expression "(bool *)(lVar30 + 0x34)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x34)" ( (binary_expression "lVar30 + 0x34" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x38) = param_11;" (assignment_expression "*(uint *)(lVar30 + 0x38) = param_11" (pointer_expression "*(uint *)(lVar30 + 0x38)" * (cast_expression "(uint *)(lVar30 + 0x38)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x38)" ( (binary_expression "lVar30 + 0x38" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char *)(lVar30 + 0x3c) = cVar12;" (assignment_expression "*(char *)(lVar30 + 0x3c) = cVar12" (pointer_expression "*(char *)(lVar30 + 0x3c)" * (cast_expression "(char *)(lVar30 + 0x3c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x3c)" ( (binary_expression "lVar30 + 0x3c" identifier + number_literal) )))) = identifier) ;) (expression_statement "FUN_004a11e0(lVar30,&DAT_0067db40);" (call_expression "FUN_004a11e0(lVar30,&DAT_0067db40)" identifier (argument_list "(lVar30,&DAT_0067db40)" ( identifier , (pointer_expression "&DAT_0067db40" & identifier) ))) ;) (expression_statement "_DAT_0067db50 = _DAT_0067db50 + 1;" (assignment_expression "_DAT_0067db50 = _DAT_0067db50 + 1" identifier = (binary_expression "_DAT_0067db50 + 1" identifier + number_literal)) ;) })))) }) (else_clause "else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }" else (compound_statement "{\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }" { (if_statement "if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }" if (parenthesized_expression "(param_8 != (undefined8 *)0x0)" ( (binary_expression "param_8 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }" { (labeled_statement "LAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }" statement_identifier : (if_statement "if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }" if (parenthesized_expression "(*(char *)(param_8 + 0x11) != '\0')" ( (binary_expression "*(char *)(param_8 + 0x11) != '\0'" (pointer_expression "*(char *)(param_8 + 0x11)" * (cast_expression "(char *)(param_8 + 0x11)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 0x11)" ( (binary_expression "param_8 + 0x11" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }" { (expression_statement "uVar17 = FUN_001d7270(param_9,plVar3,0);" (assignment_expression "uVar17 = FUN_001d7270(param_9,plVar3,0)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,0)" identifier (argument_list "(param_9,plVar3,0)" ( identifier , identifier , number_literal )))) ;) (if_statement "if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }" if (parenthesized_expression "(*(int *)((long)param_8 + 0x5c) != 2)" ( (binary_expression "*(int *)((long)param_8 + 0x5c) != 2" (pointer_expression "*(int *)((long)param_8 + 0x5c)" * (cast_expression "(int *)((long)param_8 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x5c)" ( (binary_expression "(long)param_8 + 0x5c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }" { (expression_statement "piVar4 = *(int **)(uVar34 + 0xd0);" (assignment_expression "piVar4 = *(int **)(uVar34 + 0xd0)" identifier = (pointer_expression "*(int **)(uVar34 + 0xd0)" * (cast_expression "(int **)(uVar34 + 0xd0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar34 + 0xd0)" ( (binary_expression "uVar34 + 0xd0" identifier + number_literal) ))))) ;) (if_statement "if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }" if (parenthesized_expression "(piVar4 == (int *)0x0)" ( (binary_expression "piVar4 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }" { (expression_statement "iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);" (assignment_expression "iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200)" identifier = (binary_expression "(*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200)" (subscript_expression "(*(int **)(uVar34 + 200))[1]" (parenthesized_expression "(*(int **)(uVar34 + 200))" ( (pointer_expression "*(int **)(uVar34 + 200)" * (cast_expression "(int **)(uVar34 + 200)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar34 + 200)" ( (binary_expression "uVar34 + 200" identifier + number_literal) )))) )) [ number_literal ]) + (pointer_expression "**(int **)(uVar34 + 200)" * (pointer_expression "*(int **)(uVar34 + 200)" * (cast_expression "(int **)(uVar34 + 200)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar34 + 200)" ( (binary_expression "uVar34 + 200" identifier + number_literal) ))))))) ;) }) (else_clause "else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }" else (compound_statement "{\n                    iVar38 = piVar4[1] + *piVar4;\n                  }" { (expression_statement "iVar38 = piVar4[1] + *piVar4;" (assignment_expression "iVar38 = piVar4[1] + *piVar4" identifier = (binary_expression "piVar4[1] + *piVar4" (subscript_expression "piVar4[1]" identifier [ number_literal ]) + (pointer_expression "*piVar4" * identifier))) ;) }))) (if_statement "if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }" if (parenthesized_expression "(*(int *)(param_8 + 4) != 0)" ( (binary_expression "*(int *)(param_8 + 4) != 0" (pointer_expression "*(int *)(param_8 + 4)" * (cast_expression "(int *)(param_8 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 4)" ( (binary_expression "param_8 + 4" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }" { (expression_statement "*(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;" (assignment_expression "*(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18" (pointer_expression "*(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3))" * (cast_expression "(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3))" ( (binary_expression "*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)" (pointer_expression "*(long *)(uVar34 + 0xb8)" * (cast_expression "(long *)(uVar34 + 0xb8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar34 + 0xb8)" ( (binary_expression "uVar34 + 0xb8" identifier + number_literal) )))) + (call_expression "(ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)" ( (binary_expression "(uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3" (call_expression "(uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20)" ( (binary_expression "((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20" (parenthesized_expression "((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2)" ( (binary_expression "(*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2" (binary_expression "(*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38" (parenthesized_expression "(*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0))" ( (binary_expression "*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)" (pointer_expression "*(int *)(param_8 + 4)" * (cast_expression "(int *)(param_8 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 4)" ( (binary_expression "param_8 + 4" identifier + number_literal) )))) - (pointer_expression "*(int *)(uVar34 + 0xc0)" * (cast_expression "(int *)(uVar34 + 0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar34 + 0xc0)" ( (binary_expression "uVar34 + 0xc0" identifier + number_literal) ))))) )) + identifier) + number_literal) )) * number_literal) ))) >> number_literal) )))) )))) = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (break_statement "break;" break ;) })) (goto_statement "goto LAB_002c8342;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c8347;" goto statement_identifier ;) }))) })) (expression_statement "uVar17 = FUN_001d7270(param_9,plVar3,0);" (assignment_expression "uVar17 = FUN_001d7270(param_9,plVar3,0)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,0)" identifier (argument_list "(param_9,plVar3,0)" ( identifier , identifier , number_literal )))) ;) (expression_statement "*(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;" (assignment_expression "*(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (pointer_expression "*(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8)" * (cast_expression "(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(uVar34 + 0xb8) + (ulong)local_e8)" ( (binary_expression "*(long *)(uVar34 + 0xb8) + (ulong)local_e8" (pointer_expression "*(long *)(uVar34 + 0xb8)" * (cast_expression "(long *)(uVar34 + 0xb8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar34 + 0xb8)" ( (binary_expression "uVar34 + 0xb8" identifier + number_literal) )))) + (cast_expression "(ulong)local_e8" ( (type_descriptor "ulong" type_identifier) ) identifier)) )))) = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) }))) }))) (break_statement "break;" break ;)) (case_statement "case 0x17:" case number_literal :) (case_statement "case 0x1f:" case number_literal :) (case_statement "case 0x95:" case number_literal :) (case_statement "case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }" { (if_statement "if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }" { (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" identifier = (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" ( (pointer_expression "**(code **)(*plVar3 + 0x160)" * (pointer_expression "*(code **)(*plVar3 + 0x160)" * (cast_expression "(code **)(*plVar3 + 0x160)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*plVar3 + 0x160)" ( (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" * identifier) + number_literal) ))))) )) (argument_list "(plVar3,uVar7,0,(long)(int)local_c8)" ( identifier , identifier , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (goto_statement "goto LAB_002c5ddf;" goto statement_identifier ;) })) (labeled_statement "LAB_002c8369:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c836e:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (goto_statement "goto LAB_002c8373;" goto statement_identifier ;) })) (if_statement "if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }" { (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3)" identifier = (call_expression "FUN_0029b910(lVar30,param_8,0,plVar3)" identifier (argument_list "(lVar30,param_8,0,plVar3)" ( identifier , identifier , number_literal , identifier )))) ;) (labeled_statement "LAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }" statement_identifier : (if_statement "if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }" if (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }" { (expression_statement "uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);" (assignment_expression "uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" identifier = (call_expression "FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" identifier (argument_list "(*(long *)(param_4 + 0x20),local_e8,plVar3)" ( (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) , identifier , identifier )))) ;) (if_statement "if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;" if (parenthesized_expression "(*(char *)((long)param_1 + 4) != '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) != '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c67b0;" goto statement_identifier ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = (uint)*param_10;" (assignment_expression "uVar19 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;" (assignment_expression "uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36" identifier = (binary_expression "(uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36" (parenthesized_expression "(uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8)" ( (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8" (binary_expression "uVar19 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" ( (binary_expression "uVar19 & 0xff0000" identifier & number_literal) )) >> number_literal)) )) ^ identifier)) ;) (expression_statement "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;" (assignment_expression "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (goto_statement "goto LAB_002c624f;" goto statement_identifier ;) }))) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_002c826c:\n        FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8271:\n        FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8276:\n        FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c827b:\n        FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8280:\n        FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8285:\n        FUN_00293370();" statement_identifier : (expression_statement "FUN_00293370();" (call_expression "FUN_00293370()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c828a:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");" statement_identifier : comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset")" identifier (argument_list "("../../gold/mips.cc",0x86a,"tls_ldm_offset")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""tls_ldm_offset"" " string_content ") ))) ;))) (case_statement "case 0x18:" case number_literal :) (case_statement "case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;" statement_identifier : (expression_statement "uVar34 = (ulong)-local_c0;" (assignment_expression "uVar34 = (ulong)-local_c0" identifier = (binary_expression "(ulong)-local_c0" (parenthesized_expression "(ulong)" ( identifier )) - identifier)) ;)) (labeled_statement "LAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);" statement_identifier : (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar34);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar34)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar34)" identifier (argument_list "(param_9,plVar3,uVar34)" ( identifier , identifier , identifier )))) ;)) (expression_statement "uVar19 = (uint)uVar34;" (assignment_expression "uVar19 = (uint)uVar34" identifier = (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (cVar13 != '\0') goto LAB_002c59a8;" if (parenthesized_expression "(cVar13 != '\0')" ( (binary_expression "cVar13 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;" (assignment_expression "*param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38" (pointer_expression "*param_10" * identifier) = (binary_expression "(uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38" (binary_expression "(uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28" (binary_expression "(uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18" (binary_expression "(uVar34 & 0xff000000) << 8" (parenthesized_expression "(uVar34 & 0xff000000)" ( (binary_expression "uVar34 & 0xff000000" identifier & number_literal) )) << number_literal) | (binary_expression "(uVar34 & 0xff0000) << 0x18" (parenthesized_expression "(uVar34 & 0xff0000)" ( (binary_expression "uVar34 & 0xff0000" identifier & number_literal) )) << number_literal)) | (binary_expression "(uVar34 & 0xff00) << 0x28" (parenthesized_expression "(uVar34 & 0xff00)" ( (binary_expression "uVar34 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar34 << 0x38" identifier << number_literal))) ;) (break_statement "break;" break ;)) (case_statement "case 0x1c:" case number_literal :) (case_statement "case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c59bd:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar16 = (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar16 = (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) ;) (expression_statement "uVar36 = uVar17 >> 0x18 | uVar16;" (assignment_expression "uVar36 = uVar17 >> 0x18 | uVar16" identifier = (binary_expression "uVar17 >> 0x18 | uVar16" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | identifier)) ;) (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" identifier = identifier) ;) (if_statement "if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }" if (parenthesized_expression "((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0))" ( (binary_expression "(bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)" (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) && (parenthesized_expression "(uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)" ( (comma_expression "uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0" (assignment_expression "uVar19 = uVar36 - 0x10000" identifier = (binary_expression "uVar36 - 0x10000" identifier - number_literal)) , (binary_expression "(uVar16 & 0x8000) == 0" (parenthesized_expression "(uVar16 & 0x8000)" ( (binary_expression "uVar16 & 0x8000" identifier & number_literal) )) == number_literal)) ))) )) (compound_statement "{\n          uVar19 = uVar36;\n        }" { (expression_statement "uVar19 = uVar36;" (assignment_expression "uVar19 = uVar36" identifier = identifier) ;) })) (expression_statement "uVar16 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "uVar16 = FUN_001d7270(param_9,plVar3,uVar19)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" identifier (argument_list "(param_9,plVar3,uVar19)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);" (assignment_expression "uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20)" identifier = (call_expression "(uint)((ulong)uVar16 + 0x80008000 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulong)uVar16 + 0x80008000 >> 0x20)" ( (binary_expression "(ulong)uVar16 + 0x80008000 >> 0x20" (binary_expression "(ulong)uVar16 + 0x80008000" (cast_expression "(ulong)uVar16" ( (type_descriptor "ulong" type_identifier) ) identifier) + number_literal) >> number_literal) )))) ;) (goto_statement "goto joined_r0x002c59a3;" goto statement_identifier ;)) (case_statement "case 0x1d:" case number_literal :) (case_statement "case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6b55:\n        uVar19 = (uint)*param_10;" statement_identifier : (expression_statement "uVar19 = (uint)*param_10;" (assignment_expression "uVar19 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }" { (expression_statement "uVar16 = (uVar19 & 0xff0000) >> 8;" (assignment_expression "uVar16 = (uVar19 & 0xff0000) >> 8" identifier = (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" ( (binary_expression "uVar19 & 0xff0000" identifier & number_literal) )) >> number_literal)) ;) (expression_statement "uVar36 = uVar19 >> 0x18 | uVar16;" (assignment_expression "uVar36 = uVar19 >> 0x18 | uVar16" identifier = (binary_expression "uVar19 >> 0x18 | uVar16" (binary_expression "uVar19 >> 0x18" identifier >> number_literal) | identifier)) ;) (expression_statement "uVar17 = uVar36 - 0x10000;" (assignment_expression "uVar17 = uVar36 - 0x10000" identifier = (binary_expression "uVar36 - 0x10000" identifier - number_literal)) ;) (if_statement "if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }" if (parenthesized_expression "((uVar16 & 0x8000) == 0)" ( (binary_expression "(uVar16 & 0x8000) == 0" (parenthesized_expression "(uVar16 & 0x8000)" ( (binary_expression "uVar16 & 0x8000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar17 = uVar36;\n          }" { (expression_statement "uVar17 = uVar36;" (assignment_expression "uVar17 = uVar36" identifier = identifier) ;) })) })) (expression_statement "FUN_001d7270(param_9,plVar3,uVar17);" (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" identifier (argument_list "(param_9,plVar3,uVar17)" ( identifier , identifier , identifier ))) ;) (if_statement "if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }" if (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) (compound_statement "{\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }" { (expression_statement "uVar19 = uVar19 & 0xffff;" (assignment_expression "uVar19 = uVar19 & 0xffff" identifier = (binary_expression "uVar19 & 0xffff" identifier & number_literal)) ;) (expression_statement "puVar37 = param_10;" (assignment_expression "puVar37 = param_10" identifier = identifier) ;) (goto_statement "goto LAB_002c5c85;" goto statement_identifier ;) })) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_1 = 0;" (assignment_expression "*(uint *)param_1 = 0" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case 0x25:" case number_literal :) (case_statement "case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }" statement_identifier : (if_statement "if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }" if (parenthesized_expression "(param_8 != (undefined8 *)0x0)" ( (binary_expression "param_8 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }" { (expression_statement "cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);" (assignment_expression "cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1)" identifier = (call_expression "FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1)" identifier (argument_list "(param_8,*(int *)(param_8 + 4) != 0,1)" ( identifier , (binary_expression "*(int *)(param_8 + 4) != 0" (pointer_expression "*(int *)(param_8 + 4)" * (cast_expression "(int *)(param_8 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 4)" ( (binary_expression "param_8 + 4" identifier + number_literal) )))) != number_literal) , number_literal )))) ;) (if_statement "if (cVar13 == '\0') break;" if (parenthesized_expression "(cVar13 == '\0')" ( (binary_expression "cVar13 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (break_statement "break;" break ;)) (expression_statement "cVar13 = *(char *)((long)param_1 + 4);" (assignment_expression "cVar13 = *(char *)((long)param_1 + 4)" identifier = (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) }))) (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;" (assignment_expression "uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" identifier = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar36 = uVar16;" (assignment_expression "uVar36 = uVar16" identifier = identifier) ;) (if_statement "if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }" if (parenthesized_expression "(((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809))))" ( (binary_expression "((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))" (parenthesized_expression "((uVar17 == 0x25) && (local_e3 != 1))" ( (binary_expression "(uVar17 == 0x25) && (local_e3 != 1)" (parenthesized_expression "(uVar17 == 0x25)" ( (binary_expression "uVar17 == 0x25" identifier == number_literal) )) && (parenthesized_expression "(local_e3 != 1)" ( (binary_expression "local_e3 != 1" identifier != number_literal) ))) )) && (parenthesized_expression "((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))" ( (parenthesized_expression "(uVar16 == 0x3200008 || (uVar16 == 0x320f809))" ( (binary_expression "uVar16 == 0x3200008 || (uVar16 == 0x320f809)" (binary_expression "uVar16 == 0x3200008" identifier == number_literal) || (parenthesized_expression "(uVar16 == 0x320f809)" ( (binary_expression "uVar16 == 0x320f809" identifier == number_literal) ))) )) ))) )) (compound_statement "{\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }" { (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3)" identifier = (call_expression "FUN_001d7270(param_9,plVar3)" identifier (argument_list "(param_9,plVar3)" ( identifier , identifier )))) ;) (if_statement "if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }" if (parenthesized_expression "((iVar38 - param_11) + 0x1fffc < 0x40000)" ( (binary_expression "(iVar38 - param_11) + 0x1fffc < 0x40000" (binary_expression "(iVar38 - param_11) + 0x1fffc" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal) < number_literal) )) (compound_statement "{\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }" { (expression_statement "uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;" (assignment_expression "uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff" identifier = (binary_expression "(iVar38 - param_11) - 4 >> 2 & 0xffff" (binary_expression "(iVar38 - param_11) - 4 >> 2" (binary_expression "(iVar38 - param_11) - 4" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) - number_literal) >> number_literal) & number_literal)) ;) (expression_statement "uVar36 = uVar17 | 0x10000000;" (assignment_expression "uVar36 = uVar17 | 0x10000000" identifier = (binary_expression "uVar17 | 0x10000000" identifier | number_literal)) ;) (if_statement "if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }" if (parenthesized_expression "(uVar16 != 0x3200008)" ( (binary_expression "uVar16 != 0x3200008" identifier != number_literal) )) (compound_statement "{\n              uVar36 = uVar17 | 0x4110000;\n            }" { (expression_statement "uVar36 = uVar17 | 0x4110000;" (assignment_expression "uVar36 = uVar17 | 0x4110000" identifier = (binary_expression "uVar17 | 0x4110000" identifier | number_literal)) ;) })) })) })) (if_statement "if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }" if (parenthesized_expression "(cVar13 == '\0')" ( (binary_expression "cVar13 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }" { (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;" (assignment_expression "*(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) }) (else_clause "else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }" else (compound_statement "{\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }" { (expression_statement "*(uint *)param_1 = uVar36;" (assignment_expression "*(uint *)param_1 = uVar36" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) }))) (break_statement "break;" break ;)) (case_statement "case 0x27:" case number_literal :) (case_statement "case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;" (assignment_expression "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (if_statement "if (bVar48 == false) {\n          uVar17 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar17 = local_c8;\n        }" { (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar17)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" identifier (argument_list "(param_9,plVar3,uVar17)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - 0x8000;" (assignment_expression "uVar19 = iVar38 - 0x8000" identifier = (binary_expression "iVar38 - 0x8000" identifier - number_literal)) ;) (if_statement "if (!bVar49 || !bVar50) goto LAB_002c5ccb;" if (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) (goto_statement "goto LAB_002c5ccb;" goto statement_identifier ;)) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (case_statement "case 0x2a:" case number_literal :) (case_statement "case 0x6a:" case number_literal :) (case_statement "case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }" { (if_statement "if (lVar30 == 0) goto LAB_002c832e;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c832e;" goto statement_identifier ;)) (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8)" identifier = (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" ( (pointer_expression "**(code **)(*plVar3 + 0x160)" * (pointer_expression "*(code **)(*plVar3 + 0x160)" * (cast_expression "(code **)(*plVar3 + 0x160)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*plVar3 + 0x160)" ( (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" * identifier) + number_literal) ))))) )) (argument_list "(plVar3,uVar7,2,(long)(int)local_c8)" ( identifier , identifier , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (labeled_statement "LAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (lVar30 != 0) goto LAB_002c5c62;" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (goto_statement "goto LAB_002c5c62;" goto statement_identifier ;)) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }" else (if_statement "if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }" { (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3)" identifier = (call_expression "FUN_0029b910(lVar30,param_8,2,plVar3)" identifier (argument_list "(lVar30,param_8,2,plVar3)" ( identifier , identifier , number_literal , identifier )))) ;) (goto_statement "goto LAB_002c5c48;" goto statement_identifier ;) })))) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_002c83ab;" goto statement_identifier ;)) (case_statement "case 0x2b:" case number_literal :) (case_statement "case 0x6b:" case number_literal :) (case_statement "case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }" { (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_002c8364:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (goto_statement "goto LAB_002c8369;" goto statement_identifier ;) })) (if_statement "if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }" if (parenthesized_expression "(*(long *)(lVar30 + 0xd0) == 0)" ( (binary_expression "*(long *)(lVar30 + 0xd0) == 0" (pointer_expression "*(long *)(lVar30 + 0xd0)" * (cast_expression "(long *)(lVar30 + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0xd0)" ( (binary_expression "lVar30 + 0xd0" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          lVar24 = *(long *)(lVar30 + 200);\n        }" { (expression_statement "lVar24 = *(long *)(lVar30 + 200);" (assignment_expression "lVar24 = *(long *)(lVar30 + 200)" identifier = (pointer_expression "*(long *)(lVar30 + 200)" * (cast_expression "(long *)(lVar30 + 200)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 200)" ( (binary_expression "lVar30 + 200" identifier + number_literal) ))))) ;) }) (else_clause "else {\n          lVar24 = plVar3[0x6e];\n        }" else (compound_statement "{\n          lVar24 = plVar3[0x6e];\n        }" { (expression_statement "lVar24 = plVar3[0x6e];" (assignment_expression "lVar24 = plVar3[0x6e]" identifier = (subscript_expression "plVar3[0x6e]" identifier [ number_literal ])) ;) }))) (if_statement "if (lVar24 == 0) goto LAB_002c828a;" if (parenthesized_expression "(lVar24 == 0)" ( (binary_expression "lVar24 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c828a;" goto statement_identifier ;)) (expression_statement "local_e8 = *(uint *)(lVar24 + 0x14);" (assignment_expression "local_e8 = *(uint *)(lVar24 + 0x14)" identifier = (pointer_expression "*(uint *)(lVar24 + 0x14)" * (cast_expression "(uint *)(lVar24 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar24 + 0x14)" ( (binary_expression "lVar24 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "uVar19 = FUN_00292520(lVar30,local_e8,plVar3);" (assignment_expression "uVar19 = FUN_00292520(lVar30,local_e8,plVar3)" identifier = (call_expression "FUN_00292520(lVar30,local_e8,plVar3)" identifier (argument_list "(lVar30,local_e8,plVar3)" ( identifier , identifier , identifier )))) ;) (goto_statement "goto LAB_002c5c74;" goto statement_identifier ;)) (case_statement "case 0x2c:" case number_literal :) (case_statement "case 0x6c:" case number_literal :) (case_statement "case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar16 = local_c8;\n        }" { (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) })) (expression_statement "uVar19 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar19 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (goto_statement "goto LAB_002c5a76;" goto statement_identifier ;)) (case_statement "case 0x2d:" case number_literal :) (case_statement "case 0x6d:" case number_literal :) (case_statement "case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;" case number_literal : (labeled_statement "switchD_002c4f87_caseD_2d:\n        bVar48 = false;" statement_identifier : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;)) (labeled_statement "switchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar16 = local_c8;\n        }" { (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - 0x8000;" (assignment_expression "uVar19 = iVar38 - 0x8000" identifier = (binary_expression "iVar38 - 0x8000" identifier - number_literal)) ;) (goto_statement "goto joined_r0x002c59a3;" goto statement_identifier ;)) (case_statement "case 0x2e:" case number_literal :) (case_statement "case 0x6e:" case number_literal :) (case_statement "case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }" { (if_statement "if (lVar30 == 0) goto LAB_002c836e;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c836e;" goto statement_identifier ;)) (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8)" identifier = (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" ( (pointer_expression "**(code **)(*plVar3 + 0x160)" * (pointer_expression "*(code **)(*plVar3 + 0x160)" * (cast_expression "(code **)(*plVar3 + 0x160)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*plVar3 + 0x160)" ( (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" * identifier) + number_literal) ))))) )) (argument_list "(plVar3,uVar7,1,(long)(int)local_c8)" ( identifier , identifier , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }) (else_clause "else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }" else (compound_statement "{\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }" { (if_statement "if (lVar30 == 0) goto LAB_002c8338;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c8338;" goto statement_identifier ;)) (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3)" identifier = (call_expression "FUN_0029b910(lVar30,param_8,1,plVar3)" identifier (argument_list "(lVar30,param_8,1,plVar3)" ( identifier , identifier , number_literal , identifier )))) ;) }))) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }" { (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto switchD_002c4f87_caseD_2d;" goto statement_identifier ;) })) (labeled_statement "LAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);" statement_identifier : (expression_statement "uVar19 = FUN_00292520(lVar30,local_e8,plVar3);" (assignment_expression "uVar19 = FUN_00292520(lVar30,local_e8,plVar3)" identifier = (call_expression "FUN_00292520(lVar30,local_e8,plVar3)" identifier (argument_list "(lVar30,local_e8,plVar3)" ( identifier , identifier , identifier )))) ;)) (labeled_statement "LAB_002c5c74:\n        puVar37 = param_1;" statement_identifier : (expression_statement "puVar37 = param_1;" (assignment_expression "puVar37 = param_1" identifier = identifier) ;)) (if_statement "if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }" if (parenthesized_expression "(*(char *)((long)param_1 + 4) == '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) == '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }" { (labeled_statement "LAB_002c6098:\n          uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;" (assignment_expression "uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19" identifier = (binary_expression "(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19" (parenthesized_expression "(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8)" ( (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) )) ^ identifier)) ;) (expression_statement "uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;" (assignment_expression "uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" identifier = (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (labeled_statement "LAB_002c60ab:\n          *(uint *)param_10 = uVar17;" statement_identifier : (expression_statement "*(uint *)param_10 = uVar17;" (assignment_expression "*(uint *)param_10 = uVar17" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;)) (expression_statement "uVar16 = (uint)(0xffff < uVar19 + 0x8000);" (assignment_expression "uVar16 = (uint)(0xffff < uVar19 + 0x8000)" identifier = (call_expression "(uint)(0xffff < uVar19 + 0x8000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffff < uVar19 + 0x8000)" ( (binary_expression "0xffff < uVar19 + 0x8000" number_literal < (binary_expression "uVar19 + 0x8000" identifier + number_literal)) )))) ;) }) (else_clause "else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }" else (compound_statement "{\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }" { (labeled_statement "LAB_002c5c85:\n          *(uint *)puVar37 = uVar19;" statement_identifier : (expression_statement "*(uint *)puVar37 = uVar19;" (assignment_expression "*(uint *)puVar37 = uVar19" (pointer_expression "*(uint *)puVar37" * (cast_expression "(uint *)puVar37" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;)) (labeled_statement "LAB_002c5c87:\n          uVar16 = 0;" statement_identifier : (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;)) }))) (break_statement "break;" break ;)) (case_statement "case 0x2f:" case number_literal :) (case_statement "case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;" (assignment_expression "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (if_statement "if (bVar48 == false) {\n          uVar17 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar17 = local_c8;\n        }" { (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar17)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" identifier (argument_list "(param_9,plVar3,uVar17)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - 0x7000;" (assignment_expression "uVar19 = iVar38 - 0x7000" identifier = (binary_expression "iVar38 - 0x7000" identifier - number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;" (assignment_expression "*(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18" (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8" (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8" (binary_expression "uVar19 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" ( (binary_expression "uVar19 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" ( (binary_expression "uVar19 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "iVar38 << 0x18" identifier << number_literal))) ;) (break_statement "break;" break ;)) (case_statement "case 0x31:" case number_literal :) (case_statement "case 0x6f:" case number_literal :) (case_statement "case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar16 = local_c8;\n        }" { (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 + 0x1000;" (assignment_expression "uVar19 = iVar38 + 0x1000" identifier = (binary_expression "iVar38 + 0x1000" identifier + number_literal)) ;) (labeled_statement "LAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;" statement_identifier : (expression_statement "uVar19 = uVar19 >> 0x10;" (assignment_expression "uVar19 = uVar19 >> 0x10" identifier = (binary_expression "uVar19 >> 0x10" identifier >> number_literal)) ;)) (goto_statement "goto joined_r0x002c59a3;" goto statement_identifier ;)) (case_statement "case 0x32:" case number_literal :) (case_statement "case 0x70:" case number_literal :) (case_statement "case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar16 = local_c8;\n        }" { (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - 0x7000;" (assignment_expression "uVar19 = iVar38 - 0x7000" identifier = (binary_expression "iVar38 - 0x7000" identifier - number_literal)) ;) (labeled_statement "joined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }" statement_identifier : (if_statement "if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }" if (parenthesized_expression "(bVar49 && bVar50)" ( (binary_expression "bVar49 && bVar50" identifier && identifier) )) (compound_statement "{\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }" { (labeled_statement "LAB_002c59a8:\n          uVar16 = 0;" statement_identifier : (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;)) (expression_statement "*(uint *)param_1 = uVar19;" (assignment_expression "*(uint *)param_1 = uVar19" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }) (else_clause "else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }" else (compound_statement "{\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }" { (expression_statement "*(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);" (assignment_expression "*(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18)" identifier ^ (parenthesized_expression "(((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18)" ( (binary_expression "((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18" (binary_expression "((uVar19 ^ uVar36) & 0xff00) << 8" (parenthesized_expression "((uVar19 ^ uVar36) & 0xff00)" ( (binary_expression "(uVar19 ^ uVar36) & 0xff00" (parenthesized_expression "(uVar19 ^ uVar36)" ( (binary_expression "uVar19 ^ uVar36" identifier ^ identifier) )) & number_literal) )) << number_literal) | (binary_expression "(uVar19 ^ uVar36) << 0x18" (parenthesized_expression "(uVar19 ^ uVar36)" ( (binary_expression "uVar19 ^ uVar36" identifier ^ identifier) )) << number_literal)) )))) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) })))) (break_statement "break;" break ;)) (case_statement "case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6f06:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal))) ;) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar36 * 4;" (assignment_expression "uVar19 = uVar36 * 4" identifier = (binary_expression "uVar36 * 4" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0x7ffffc;" (assignment_expression "uVar45 = uVar19 & 0x7ffffc" identifier = (binary_expression "uVar19 & 0x7ffffc" identifier & number_literal)) ;) (expression_statement "uVar16 = uVar45 - 0x800000;" (assignment_expression "uVar16 = uVar45 - 0x800000" identifier = (binary_expression "uVar45 - 0x800000" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x400000) == 0)" ( (binary_expression "(uVar19 & 0x400000) == 0" (parenthesized_expression "(uVar19 & 0x400000)" ( (binary_expression "uVar19 & 0x400000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar16 = uVar45;\n          }" { (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11 >> 2;" (assignment_expression "uVar19 = iVar38 - param_11 >> 2" identifier = (binary_expression "iVar38 - param_11 >> 2" (binary_expression "iVar38 - param_11" identifier - identifier) >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" identifier = (binary_expression "uVar36 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);" (assignment_expression "*(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" identifier ^ (parenthesized_expression "((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "(uVar36 & 0x1f0000) >> 8" (parenthesized_expression "(uVar36 & 0x1f0000)" ( (binary_expression "uVar36 & 0x1f0000" identifier & number_literal) )) >> number_literal) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )))) ;) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar16 = 3;" (assignment_expression "uVar16 = 3" identifier = number_literal) ;) (if_statement "if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }" if (parenthesized_expression "((uVar34 & 3) == 0)" ( (binary_expression "(uVar34 & 3) == 0" (parenthesized_expression "(uVar34 & 3)" ( (binary_expression "uVar34 & 3" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }" { (expression_statement "uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);" (assignment_expression "uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000)" identifier = (call_expression "(uint)(0x7fffff < (iVar38 - param_11) + 0x400000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0x7fffff < (iVar38 - param_11) + 0x400000)" ( (binary_expression "0x7fffff < (iVar38 - param_11) + 0x400000" number_literal < (binary_expression "(iVar38 - param_11) + 0x400000" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) )))) ;) })) (break_statement "break;" break ;)) (case_statement "case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6fd2:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;" (assignment_expression "uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar16 * 4;" (assignment_expression "uVar19 = uVar16 * 4" identifier = (binary_expression "uVar16 * 4" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0xffffffc;" (assignment_expression "uVar45 = uVar19 & 0xffffffc" identifier = (binary_expression "uVar19 & 0xffffffc" identifier & number_literal)) ;) (expression_statement "uVar36 = uVar45 + 0xf0000000;" (assignment_expression "uVar36 = uVar45 + 0xf0000000" identifier = (binary_expression "uVar45 + 0xf0000000" identifier + number_literal)) ;) (if_statement "if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x8000000) == 0)" ( (binary_expression "(uVar19 & 0x8000000) == 0" (parenthesized_expression "(uVar19 & 0x8000000)" ( (binary_expression "uVar19 & 0x8000000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar36 = uVar45;\n          }" { (expression_statement "uVar36 = uVar45;" (assignment_expression "uVar36 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar36)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" identifier (argument_list "(param_9,plVar3,uVar36)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11 >> 2;" (assignment_expression "uVar19 = iVar38 - param_11 >> 2" identifier = (binary_expression "iVar38 - param_11 >> 2" (binary_expression "iVar38 - param_11" identifier - identifier) >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar16 = uVar16 ^ uVar19;" (assignment_expression "uVar16 = uVar16 ^ uVar19" identifier = (binary_expression "uVar16 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);" (assignment_expression "*(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18)" identifier ^ (parenthesized_expression "((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18)" ( (binary_expression "(uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18" (binary_expression "(uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8" (binary_expression "(uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "(uVar16 & 0x3ffffff) >> 0x18" (parenthesized_expression "(uVar16 & 0x3ffffff)" ( (binary_expression "uVar16 & 0x3ffffff" identifier & number_literal) )) >> number_literal) | (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" ( (binary_expression "uVar16 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar16 & 0xff00) << 8" (parenthesized_expression "(uVar16 & 0xff00)" ( (binary_expression "uVar16 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "(uVar16 & 0x3ffffff) << 0x18" (parenthesized_expression "(uVar16 & 0x3ffffff)" ( (binary_expression "uVar16 & 0x3ffffff" identifier & number_literal) )) << number_literal)) )))) ;) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar36)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" identifier (argument_list "(param_9,plVar3,uVar36)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar16 = 3;" (assignment_expression "uVar16 = 3" identifier = number_literal) ;) (if_statement "if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }" if (parenthesized_expression "((uVar34 & 3) == 0)" ( (binary_expression "(uVar34 & 3) == 0" (parenthesized_expression "(uVar34 & 3)" ( (binary_expression "uVar34 & 3" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }" { (expression_statement "uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);" (assignment_expression "uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000)" identifier = (call_expression "(uint)(0xfffffff < (iVar38 - param_11) + 0x8000000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xfffffff < (iVar38 - param_11) + 0x8000000)" ( (binary_expression "0xfffffff < (iVar38 - param_11) + 0x8000000" number_literal < (binary_expression "(iVar38 - param_11) + 0x8000000" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) )))) ;) })) (break_statement "break;" break ;)) (case_statement "case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6d53:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal))) ;) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar36 * 8;" (assignment_expression "uVar19 = uVar36 * 8" identifier = (binary_expression "uVar36 * 8" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0x1ffff8;" (assignment_expression "uVar45 = uVar19 & 0x1ffff8" identifier = (binary_expression "uVar19 & 0x1ffff8" identifier & number_literal)) ;) (expression_statement "uVar16 = uVar45 - 0x200000;" (assignment_expression "uVar16 = uVar45 - 0x200000" identifier = (binary_expression "uVar45 - 0x200000" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x100000) == 0)" ( (binary_expression "(uVar19 & 0x100000) == 0" (parenthesized_expression "(uVar19 & 0x100000)" ( (binary_expression "uVar19 & 0x100000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar16 = uVar45;\n          }" { (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar45 = iVar38 - (param_11 & 0xfffffff8);" (assignment_expression "uVar45 = iVar38 - (param_11 & 0xfffffff8)" identifier = (binary_expression "iVar38 - (param_11 & 0xfffffff8)" identifier - (parenthesized_expression "(param_11 & 0xfffffff8)" ( (binary_expression "param_11 & 0xfffffff8" identifier & number_literal) )))) ;) (expression_statement "uVar19 = uVar45 >> 3;" (assignment_expression "uVar19 = uVar45 >> 3" identifier = (binary_expression "uVar45 >> 3" identifier >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" identifier = (binary_expression "uVar36 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);" (assignment_expression "*(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" identifier ^ (parenthesized_expression "((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "(uVar36 & 0x30000) >> 8" (parenthesized_expression "(uVar36 & 0x30000)" ( (binary_expression "uVar36 & 0x30000" identifier & number_literal) )) >> number_literal) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )))) ;) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar34 = uVar34 & 7;" (assignment_expression "uVar34 = uVar34 & 7" identifier = (binary_expression "uVar34 & 7" identifier & number_literal)) ;) (labeled_statement "joined_r0x002c6ec7:\n        uVar16 = 3;" statement_identifier : (expression_statement "uVar16 = 3;" (assignment_expression "uVar16 = 3" identifier = number_literal) ;)) (if_statement "if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }" if (parenthesized_expression "(uVar34 == 0)" ( (binary_expression "uVar34 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }" { (expression_statement "uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);" (assignment_expression "uVar16 = (uint)(0x1fffff < uVar45 + 0x100000)" identifier = (call_expression "(uint)(0x1fffff < uVar45 + 0x100000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0x1fffff < uVar45 + 0x100000)" ( (binary_expression "0x1fffff < uVar45 + 0x100000" number_literal < (binary_expression "uVar45 + 0x100000" identifier + number_literal)) )))) ;) })) (break_statement "break;" break ;)) (case_statement "case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6e24:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal))) ;) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar36 * 4;" (assignment_expression "uVar19 = uVar36 * 4" identifier = (binary_expression "uVar36 * 4" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0x1ffffc;" (assignment_expression "uVar45 = uVar19 & 0x1ffffc" identifier = (binary_expression "uVar19 & 0x1ffffc" identifier & number_literal)) ;) (expression_statement "uVar16 = uVar45 - 0x200000;" (assignment_expression "uVar16 = uVar45 - 0x200000" identifier = (binary_expression "uVar45 - 0x200000" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x100000) == 0)" ( (binary_expression "(uVar19 & 0x100000) == 0" (parenthesized_expression "(uVar19 & 0x100000)" ( (binary_expression "uVar19 & 0x100000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar16 = uVar45;\n          }" { (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar45 = iVar38 - param_11;" (assignment_expression "uVar45 = iVar38 - param_11" identifier = (binary_expression "iVar38 - param_11" identifier - identifier)) ;) (expression_statement "uVar19 = uVar45 >> 2;" (assignment_expression "uVar19 = uVar45 >> 2" identifier = (binary_expression "uVar45 >> 2" identifier >> number_literal)) ;) (if_statement "if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }" if (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) (compound_statement "{\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }" { (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" identifier = (binary_expression "uVar36 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);" (assignment_expression "*(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" identifier ^ (parenthesized_expression "((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "(uVar36 & 0x70000) >> 8" (parenthesized_expression "(uVar36 & 0x70000)" ( (binary_expression "uVar36 & 0x70000" identifier & number_literal) )) >> number_literal) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )))) ;) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar34 = uVar34 & 3;" (assignment_expression "uVar34 = uVar34 & 3" identifier = (binary_expression "uVar34 & 3" identifier & number_literal)) ;) (goto_statement "goto joined_r0x002c6ec7;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (case_statement "case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }" statement_identifier : (if_statement "if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }" if (parenthesized_expression "(param_3 == 4)" ( (binary_expression "param_3 == 4" identifier == number_literal) )) (compound_statement "{\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }" { (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = uVar36 << 0x10;" (assignment_expression "uVar16 = uVar36 << 0x10" identifier = (binary_expression "uVar36 << 0x10" identifier << number_literal)) ;) (if_statement "if (bVar48 == false) {\n            uVar16 = local_c8;\n          }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n            uVar16 = local_c8;\n          }" { (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;" (assignment_expression "uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10" identifier = (binary_expression "(iVar38 - param_11) + 0x8000 >> 0x10" (binary_expression "(iVar38 - param_11) + 0x8000" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal) >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar19 = uVar19 ^ uVar36;" (assignment_expression "uVar19 = uVar19 ^ uVar36" identifier = (binary_expression "uVar19 ^ uVar36" identifier ^ identifier)) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;" (assignment_expression "*(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17" (parenthesized_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" ( (binary_expression "(uVar19 & 0xff00) << 8 | uVar19 << 0x18" (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" ( (binary_expression "uVar19 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar19 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) }) (else_clause "else {\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }" else (compound_statement "{\n          if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }" { (if_statement "if (param_3 != 9) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }" if (parenthesized_expression "(param_3 != 9)" ( (binary_expression "param_3 != 9" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }" { comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2eda,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;) })) (expression_statement "lVar30 = FUN_0049cb70(0x40);" (assignment_expression "lVar30 = FUN_0049cb70(0x40)" identifier = (call_expression "FUN_0049cb70(0x40)" identifier (argument_list "(0x40)" ( number_literal )))) ;) (expression_statement "*(undefined1 *)(lVar30 + 0x3c) = 0;" (assignment_expression "*(undefined1 *)(lVar30 + 0x3c) = 0" (pointer_expression "*(undefined1 *)(lVar30 + 0x3c)" * (cast_expression "(undefined1 *)(lVar30 + 0x3c)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x3c)" ( (binary_expression "lVar30 + 0x3c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(undefined4 *)(lVar30 + 0x2c) = 0;" (assignment_expression "*(undefined4 *)(lVar30 + 0x2c) = 0" (pointer_expression "*(undefined4 *)(lVar30 + 0x2c)" * (cast_expression "(undefined4 *)(lVar30 + 0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x2c)" ( (binary_expression "lVar30 + 0x2c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(ulong **)(lVar30 + 0x10) = param_10;" (assignment_expression "*(ulong **)(lVar30 + 0x10) = param_10" (pointer_expression "*(ulong **)(lVar30 + 0x10)" * (cast_expression "(ulong **)(lVar30 + 0x10)" ( (type_descriptor "ulong **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x10)" ( (binary_expression "lVar30 + 0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(long **)(lVar30 + 0x18) = plVar3;" (assignment_expression "*(long **)(lVar30 + 0x18) = plVar3" (pointer_expression "*(long **)(lVar30 + 0x18)" * (cast_expression "(long **)(lVar30 + 0x18)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x18)" ( (binary_expression "lVar30 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(lVar30 + 0x20) = param_9;" (assignment_expression "*(uint **)(lVar30 + 0x20) = param_9" (pointer_expression "*(uint **)(lVar30 + 0x20)" * (cast_expression "(uint **)(lVar30 + 0x20)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x28) = local_c8;" (assignment_expression "*(uint *)(lVar30 + 0x28) = local_c8" (pointer_expression "*(uint *)(lVar30 + 0x28)" * (cast_expression "(uint *)(lVar30 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x28)" ( (binary_expression "lVar30 + 0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x30) = uVar7;" (assignment_expression "*(uint *)(lVar30 + 0x30) = uVar7" (pointer_expression "*(uint *)(lVar30 + 0x30)" * (cast_expression "(uint *)(lVar30 + 0x30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x30)" ( (binary_expression "lVar30 + 0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(bool *)(lVar30 + 0x34) = bVar48;" (assignment_expression "*(bool *)(lVar30 + 0x34) = bVar48" (pointer_expression "*(bool *)(lVar30 + 0x34)" * (cast_expression "(bool *)(lVar30 + 0x34)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x34)" ( (binary_expression "lVar30 + 0x34" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x38) = param_11;" (assignment_expression "*(uint *)(lVar30 + 0x38) = param_11" (pointer_expression "*(uint *)(lVar30 + 0x38)" * (cast_expression "(uint *)(lVar30 + 0x38)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x38)" ( (binary_expression "lVar30 + 0x38" identifier + number_literal) )))) = identifier) ;) (expression_statement "FUN_004a11e0(lVar30,&DAT_0067db00);" (call_expression "FUN_004a11e0(lVar30,&DAT_0067db00)" identifier (argument_list "(lVar30,&DAT_0067db00)" ( identifier , (pointer_expression "&DAT_0067db00" & identifier) ))) ;) (expression_statement "_DAT_0067db10 = _DAT_0067db10 + 1;" (assignment_expression "_DAT_0067db10 = _DAT_0067db10 + 1" identifier = (binary_expression "_DAT_0067db10 + 1" identifier + number_literal)) ;) })))) (break_statement "break;" break ;)) (case_statement "case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6ccf:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar16 = (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar16 = (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) ;) (expression_statement "uVar36 = uVar17 >> 0x18 | uVar16;" (assignment_expression "uVar36 = uVar17 >> 0x18 | uVar16" identifier = (binary_expression "uVar17 >> 0x18 | uVar16" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | identifier)) ;) (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" identifier = identifier) ;) (if_statement "if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }" if (parenthesized_expression "((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0))" ( (binary_expression "(bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)" (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) && (parenthesized_expression "(uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)" ( (comma_expression "uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0" (assignment_expression "uVar19 = uVar36 - 0x10000" identifier = (binary_expression "uVar36 - 0x10000" identifier - number_literal)) , (binary_expression "(uVar16 & 0x8000) == 0" (parenthesized_expression "(uVar16 & 0x8000)" ( (binary_expression "uVar16 & 0x8000" identifier & number_literal) )) == number_literal)) ))) )) (compound_statement "{\n          uVar19 = uVar36;\n        }" { (expression_statement "uVar19 = uVar36;" (assignment_expression "uVar19 = uVar36" identifier = identifier) ;) })) (if_statement "if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }" if (parenthesized_expression "((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00))" ( (binary_expression "(param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)" (parenthesized_expression "(param_3 == 9)" ( (binary_expression "param_3 == 9" identifier == number_literal) )) && (parenthesized_expression "(local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)" ( (comma_expression "local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00" (assignment_expression "local_98 = DAT_0067db00" identifier = identifier) , (binary_expression "(undefined8 **)DAT_0067db00 != &DAT_0067db00" (cast_expression "(undefined8 **)DAT_0067db00" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) != (pointer_expression "&DAT_0067db00" & identifier))) ))) )) (compound_statement "{\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }" { (do_statement "do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);" do (compound_statement "{\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          }" { (if_statement "if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }" if (parenthesized_expression "(uVar7 == *(uint *)(local_98 + 6))" ( (binary_expression "uVar7 == *(uint *)(local_98 + 6)" identifier == (pointer_expression "*(uint *)(local_98 + 6)" * (cast_expression "(uint *)(local_98 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_98 + 6)" ( (binary_expression "local_98 + 6" identifier + number_literal) ))))) )) (compound_statement "{\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }" { (expression_statement "puVar6 = (uint *)local_98[2];" (assignment_expression "puVar6 = (uint *)local_98[2]" identifier = (cast_expression "(uint *)local_98[2]" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_98[2]" identifier [ number_literal ]))) ;) (expression_statement "iVar38 = *(int *)(local_98 + 5);" (assignment_expression "iVar38 = *(int *)(local_98 + 5)" identifier = (pointer_expression "*(int *)(local_98 + 5)" * (cast_expression "(int *)(local_98 + 5)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_98 + 5)" ( (binary_expression "local_98 + 5" identifier + number_literal) ))))) ;) (expression_statement "uVar16 = *puVar6;" (assignment_expression "uVar16 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;" (assignment_expression "uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" identifier = (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" ( (binary_expression "uVar16 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (if_statement "if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }" if (parenthesized_expression "(*(char *)((long)local_98 + 0x34) != '\0')" ( (binary_expression "*(char *)((long)local_98 + 0x34) != '\0'" (pointer_expression "*(char *)((long)local_98 + 0x34)" * (cast_expression "(char *)((long)local_98 + 0x34)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)local_98 + 0x34)" ( (binary_expression "(long)local_98 + 0x34" (cast_expression "(long)local_98" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }" { (expression_statement "iVar38 = uVar19 + uVar45 * 0x10000;" (assignment_expression "iVar38 = uVar19 + uVar45 * 0x10000" identifier = (binary_expression "uVar19 + uVar45 * 0x10000" identifier + (binary_expression "uVar45 * 0x10000" identifier * number_literal))) ;) })) (expression_statement "iVar20 = *(int *)(local_98 + 7);" (assignment_expression "iVar20 = *(int *)(local_98 + 7)" identifier = (pointer_expression "*(int *)(local_98 + 7)" * (cast_expression "(int *)(local_98 + 7)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_98 + 7)" ( (binary_expression "local_98 + 7" identifier + number_literal) ))))) ;) (expression_statement "iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);" (assignment_expression "iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38)" identifier = (call_expression "FUN_001d7270(local_98[4],local_98[3],iVar38)" identifier (argument_list "(local_98[4],local_98[3],iVar38)" ( (subscript_expression "local_98[4]" identifier [ number_literal ]) , (subscript_expression "local_98[3]" identifier [ number_literal ]) , identifier )))) ;) (expression_statement "uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;" (assignment_expression "uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10" identifier = (binary_expression "(uint)((0x8000 - iVar20) + iVar38) >> 0x10" (call_expression "(uint)((0x8000 - iVar20) + iVar38)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((0x8000 - iVar20) + iVar38)" ( (binary_expression "(0x8000 - iVar20) + iVar38" (parenthesized_expression "(0x8000 - iVar20)" ( (binary_expression "0x8000 - iVar20" number_literal - identifier) )) + identifier) ))) >> number_literal)) ;) (if_statement "if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }" if (parenthesized_expression "(bVar49 && bVar50)" ( (binary_expression "bVar49 && bVar50" identifier && identifier) )) (compound_statement "{\n                *(uint *)param_1 = uVar32;\n              }" { (expression_statement "*(uint *)param_1 = uVar32;" (assignment_expression "*(uint *)param_1 = uVar32" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }) (else_clause "else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }" else (compound_statement "{\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }" { (expression_statement "uVar32 = uVar32 ^ uVar45;" (assignment_expression "uVar32 = uVar32 ^ uVar45" identifier = (binary_expression "uVar32 ^ uVar45" identifier ^ identifier)) ;) (expression_statement "*puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;" (assignment_expression "*puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16" (pointer_expression "*puVar6" * identifier) = (binary_expression "((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16" (parenthesized_expression "((uVar32 & 0xff00) << 8 | uVar32 << 0x18)" ( (binary_expression "(uVar32 & 0xff00) << 8 | uVar32 << 0x18" (binary_expression "(uVar32 & 0xff00) << 8" (parenthesized_expression "(uVar32 & 0xff00)" ( (binary_expression "uVar32 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar32 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) }))) (expression_statement "puVar40 = (undefined8 *)*local_98;" (assignment_expression "puVar40 = (undefined8 *)*local_98" identifier = (cast_expression "(undefined8 *)*local_98" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_98" * identifier))) ;) (expression_statement "_DAT_0067db10 = _DAT_0067db10 + -1;" (assignment_expression "_DAT_0067db10 = _DAT_0067db10 + -1" identifier = (binary_expression "_DAT_0067db10 + -1" identifier + number_literal)) ;) (expression_statement "FUN_004a1200(local_98);" (call_expression "FUN_004a1200(local_98)" identifier (argument_list "(local_98)" ( identifier ))) ;) (expression_statement "FUN_0049e340(local_98);" (call_expression "FUN_0049e340(local_98)" identifier (argument_list "(local_98)" ( identifier ))) ;) (expression_statement "local_98 = puVar40;" (assignment_expression "local_98 = puVar40" identifier = identifier) ;) }) (else_clause "else {\n              local_98 = (undefined8 *)*local_98;\n            }" else (compound_statement "{\n              local_98 = (undefined8 *)*local_98;\n            }" { (expression_statement "local_98 = (undefined8 *)*local_98;" (assignment_expression "local_98 = (undefined8 *)*local_98" identifier = (cast_expression "(undefined8 *)*local_98" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_98" * identifier))) ;) }))) }) while (parenthesized_expression "((undefined8 **)local_98 != &DAT_0067db00)" ( (binary_expression "(undefined8 **)local_98 != &DAT_0067db00" (cast_expression "(undefined8 **)local_98" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) != (pointer_expression "&DAT_0067db00" & identifier)) )) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar19)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" identifier (argument_list "(param_9,plVar3,uVar19)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11;" (assignment_expression "uVar19 = iVar38 - param_11" identifier = (binary_expression "iVar38 - param_11" identifier - identifier)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;" (assignment_expression "*(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "(((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17" (parenthesized_expression "(((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18)" ( (binary_expression "((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18" (binary_expression "((uVar19 ^ uVar36) & 0xff00) << 8" (parenthesized_expression "((uVar19 ^ uVar36) & 0xff00)" ( (binary_expression "(uVar19 ^ uVar36) & 0xff00" (parenthesized_expression "(uVar19 ^ uVar36)" ( (binary_expression "uVar19 ^ uVar36" identifier ^ identifier) )) & number_literal) )) << number_literal) | (binary_expression "(uVar19 ^ uVar36) << 0x18" (parenthesized_expression "(uVar19 ^ uVar36)" ( (binary_expression "uVar19 ^ uVar36" identifier ^ identifier) )) << number_literal)) )) ^ identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6bb8:\n        uVar34 = *param_10;" statement_identifier : (expression_statement "uVar34 = *param_10;" (assignment_expression "uVar34 = *param_10" identifier = (pointer_expression "*param_10" * identifier)) ;)) (expression_statement "uVar17 = (uint)uVar34 >> 0x18;" (assignment_expression "uVar17 = (uint)uVar34 >> 0x18" identifier = (binary_expression "(uint)uVar34 >> 0x18" (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal)) ;) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }" { (expression_statement "uVar16 = uVar17 * 2;" (assignment_expression "uVar16 = uVar17 * 2" identifier = (binary_expression "uVar17 * 2" identifier * number_literal)) ;) (expression_statement "uVar19 = uVar16 & 0xff;" (assignment_expression "uVar19 = uVar16 & 0xff" identifier = (binary_expression "uVar16 & 0xff" identifier & number_literal)) ;) (expression_statement "uVar36 = uVar19 - 0x100;" (assignment_expression "uVar36 = uVar19 - 0x100" identifier = (binary_expression "uVar19 - 0x100" identifier - number_literal)) ;) (if_statement "if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }" if (parenthesized_expression "((uVar16 & 0x80) == 0)" ( (binary_expression "(uVar16 & 0x80) == 0" (parenthesized_expression "(uVar16 & 0x80)" ( (binary_expression "uVar16 & 0x80" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar36 = uVar19;\n          }" { (expression_statement "uVar36 = uVar19;" (assignment_expression "uVar36 = uVar19" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar36)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" identifier (argument_list "(param_9,plVar3,uVar36)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11 >> 1;" (assignment_expression "uVar19 = iVar38 - param_11 >> 1" identifier = (binary_expression "iVar38 - param_11 >> 1" (binary_expression "iVar38 - param_11" identifier - identifier) >> number_literal)) ;) (if_statement "if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (compound_statement "{\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }" { (labeled_statement "LAB_002c78e8:\n          uVar16 = 0;" statement_identifier : (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;)) (expression_statement "*(uint *)param_1 = uVar19;" (assignment_expression "*(uint *)param_1 = uVar19" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }) (else_clause "else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }" else (compound_statement "{\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }" { (expression_statement "*(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;" (assignment_expression "*(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "(uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18" (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier) ^ (binary_expression "((uVar19 ^ uVar17) & 0x7f) << 0x18" (parenthesized_expression "((uVar19 ^ uVar17) & 0x7f)" ( (binary_expression "(uVar19 ^ uVar17) & 0x7f" (parenthesized_expression "(uVar19 ^ uVar17)" ( (binary_expression "uVar19 ^ uVar17" identifier ^ identifier) )) & number_literal) )) << number_literal))) ;) (expression_statement "uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);" (assignment_expression "uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80)" identifier = (call_expression "(uint)(0xff < (iVar38 - param_11) + 0x80)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xff < (iVar38 - param_11) + 0x80)" ( (binary_expression "0xff < (iVar38 - param_11) + 0x80" number_literal < (binary_expression "(iVar38 - param_11) + 0x80" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) )))) ;) }))) (break_statement "break;" break ;)) (case_statement "case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6c3e:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar36 * 2;" (assignment_expression "uVar19 = uVar36 * 2" identifier = (binary_expression "uVar36 * 2" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0x7fe;" (assignment_expression "uVar45 = uVar19 & 0x7fe" identifier = (binary_expression "uVar19 & 0x7fe" identifier & number_literal)) ;) (expression_statement "uVar16 = uVar45 - 0x800;" (assignment_expression "uVar16 = uVar45 - 0x800" identifier = (binary_expression "uVar45 - 0x800" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x400) == 0)" ( (binary_expression "(uVar19 & 0x400) == 0" (parenthesized_expression "(uVar19 & 0x400)" ( (binary_expression "uVar19 & 0x400" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar16 = uVar45;\n          }" { (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11 >> 1;" (assignment_expression "uVar19 = iVar38 - param_11 >> 1" identifier = (binary_expression "iVar38 - param_11 >> 1" (binary_expression "iVar38 - param_11" identifier - identifier) >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c78e8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c78e8;" goto statement_identifier ;)) (expression_statement "uVar19 = uVar19 ^ uVar36;" (assignment_expression "uVar19 = uVar19 ^ uVar36" identifier = (binary_expression "uVar19 ^ uVar36" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);" (assignment_expression "*(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18)" identifier ^ (parenthesized_expression "((uVar19 & 0x300) << 8 | uVar19 << 0x18)" ( (binary_expression "(uVar19 & 0x300) << 8 | uVar19 << 0x18" (binary_expression "(uVar19 & 0x300) << 8" (parenthesized_expression "(uVar19 & 0x300)" ( (binary_expression "uVar19 & 0x300" identifier & number_literal) )) << number_literal) | (binary_expression "uVar19 << 0x18" identifier << number_literal)) )))) ;) (expression_statement "uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);" (assignment_expression "uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400)" identifier = (call_expression "(uint)(0x7ff < (iVar38 - param_11) + 0x400)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0x7ff < (iVar38 - param_11) + 0x400)" ( (binary_expression "0x7ff < (iVar38 - param_11) + 0x400" number_literal < (binary_expression "(iVar38 - param_11) + 0x400" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) )))) ;) (break_statement "break;" break ;)) (case_statement "case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c69c5:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal))) ;) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar36 * 2;" (assignment_expression "uVar19 = uVar36 * 2" identifier = (binary_expression "uVar36 * 2" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0x1fffe;" (assignment_expression "uVar45 = uVar19 & 0x1fffe" identifier = (binary_expression "uVar19 & 0x1fffe" identifier & number_literal)) ;) (expression_statement "uVar16 = uVar45 - 0x20000;" (assignment_expression "uVar16 = uVar45 - 0x20000" identifier = (binary_expression "uVar45 - 0x20000" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x10000) == 0)" ( (binary_expression "(uVar19 & 0x10000) == 0" (parenthesized_expression "(uVar19 & 0x10000)" ( (binary_expression "uVar19 & 0x10000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar16 = uVar45;\n          }" { (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11 >> 1;" (assignment_expression "uVar19 = iVar38 - param_11 >> 1" identifier = (binary_expression "iVar38 - param_11 >> 1" (binary_expression "iVar38 - param_11" identifier - identifier) >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c78e8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c78e8;" goto statement_identifier ;)) (expression_statement "uVar19 = uVar19 ^ uVar36;" (assignment_expression "uVar19 = uVar19 ^ uVar36" identifier = (binary_expression "uVar19 ^ uVar36" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);" (assignment_expression "*(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" identifier ^ (parenthesized_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" ( (binary_expression "(uVar19 & 0xff00) << 8 | uVar19 << 0x18" (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" ( (binary_expression "uVar19 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar19 << 0x18" identifier << number_literal)) )))) ;) (expression_statement "uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);" (assignment_expression "uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000)" identifier = (call_expression "(uint)(0x1ffff < (iVar38 - param_11) + 0x10000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0x1ffff < (iVar38 - param_11) + 0x10000)" ( (binary_expression "0x1ffff < (iVar38 - param_11) + 0x10000" number_literal < (binary_expression "(iVar38 - param_11) + 0x10000" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) )))) ;) (break_statement "break;" break ;)) (case_statement "case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) (labeled_statement "LAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);" statement_identifier : (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar17)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" identifier (argument_list "(param_9,plVar3,uVar17)" ( identifier , identifier , identifier )))) ;)) (expression_statement "uVar19 = iVar38 - param_11;" (assignment_expression "uVar19 = iVar38 - param_11" identifier = (binary_expression "iVar38 - param_11" identifier - identifier)) ;) (if_statement "if (!bVar49 || !bVar50) goto LAB_002c5ccb;" if (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) (goto_statement "goto LAB_002c5ccb;" goto statement_identifier ;)) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) })) (labeled_statement "LAB_002c5940:\n      puVar44 = puVar44 + 1;" statement_identifier : (expression_statement "puVar44 = puVar44 + 1;" (assignment_expression "puVar44 = puVar44 + 1" identifier = (binary_expression "puVar44 + 1" identifier + number_literal)) ;)) (if_statement "if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }" if (parenthesized_expression "((uint *)&local_78 == puVar44)" ( (binary_expression "(uint *)&local_78 == puVar44" (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier)) == identifier) )) (compound_statement "{\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }" { (labeled_statement "LAB_002c5380:\n        uVar17 = uVar47 - 0x85;" statement_identifier : (expression_statement "uVar17 = uVar47 - 0x85;" (assignment_expression "uVar17 = uVar47 - 0x85" identifier = (binary_expression "uVar47 - 0x85" identifier - number_literal)) ;)) (if_statement "if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }" if (parenthesized_expression "(local_f4 < 0xd)" ( (binary_expression "local_f4 < 0xd" identifier < number_literal) )) (compound_statement "{\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }" { (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;" (assignment_expression "uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" identifier = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar45 = (uVar36 & 0xff00) << 8;" (assignment_expression "uVar45 = (uVar36 & 0xff00) << 8" identifier = (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) ;) (expression_statement "uVar32 = uVar36 << 0x18;" (assignment_expression "uVar32 = uVar36 << 0x18" identifier = (binary_expression "uVar36 << 0x18" identifier << number_literal)) ;) (expression_statement "uVar31 = uVar19 | uVar45 | uVar32;" (assignment_expression "uVar31 = uVar19 | uVar45 | uVar32" identifier = (binary_expression "uVar19 | uVar45 | uVar32" (binary_expression "uVar19 | uVar45" identifier | identifier) | identifier)) ;) (expression_statement "uVar29 = (ushort)(uVar31 >> 0x10);" (assignment_expression "uVar29 = (ushort)(uVar31 >> 0x10)" identifier = (call_expression "(ushort)(uVar31 >> 0x10)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(uVar31 >> 0x10)" ( (binary_expression "uVar31 >> 0x10" identifier >> number_literal) )))) ;) (expression_statement "uVar15 = (ushort)(uVar32 >> 0x10);" (assignment_expression "uVar15 = (ushort)(uVar32 >> 0x10)" identifier = (call_expression "(ushort)(uVar32 >> 0x10)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(uVar32 >> 0x10)" ( (binary_expression "uVar32 >> 0x10" identifier >> number_literal) )))) ;) (if_statement "if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }" if (parenthesized_expression "(uVar17 < 0x29)" ( (binary_expression "uVar17 < 0x29" identifier < number_literal) )) (compound_statement "{\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }" { (if_statement "if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }" if (parenthesized_expression "((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0)" ( (binary_expression "(0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0" (parenthesized_expression "(0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1)" ( (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f)" number_literal >> (parenthesized_expression "((ulong)uVar17 & 0x3f)" ( (binary_expression "(ulong)uVar17 & 0x3f" (cast_expression "(ulong)uVar17" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) ))) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }" { (labeled_statement "LAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);" statement_identifier : (expression_statement "uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);" (assignment_expression "uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13)" identifier = (binary_expression "uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13)" (binary_expression "uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0" (binary_expression "uVar15 & 0xf800" identifier & number_literal) | (binary_expression "(ushort)uVar19 & 0x7e0" (cast_expression "(ushort)uVar19" ( (type_descriptor "ushort" type_identifier) ) identifier) & number_literal)) | (call_expression "(ushort)((uVar36 & 0xff0000) >> 0x13)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "((uVar36 & 0xff0000) >> 0x13)" ( (binary_expression "(uVar36 & 0xff0000) >> 0x13" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal) ))))) ;)) (expression_statement "uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;" (assignment_expression "uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f" identifier = (binary_expression "(uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f" (binary_expression "(uVar45 | uVar32) >> 0xb" (parenthesized_expression "(uVar45 | uVar32)" ( (binary_expression "uVar45 | uVar32" identifier | identifier) )) >> number_literal) | (binary_expression "uVar36 >> 0x18 & 0x1f" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) & number_literal))) ;) })) }) (else_clause "else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }" else (if_statement "if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }" if (parenthesized_expression "(((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100))" ( (binary_expression "((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)" (parenthesized_expression "((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4)" ( (binary_expression "(uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4" (parenthesized_expression "(uVar47 == 0x85 || uVar47 == 100)" ( (binary_expression "uVar47 == 0x85 || uVar47 == 100" (binary_expression "uVar47 == 0x85" identifier == number_literal) || (binary_expression "uVar47 == 100" identifier == number_literal)) )) || (binary_expression "uVar47 == 4" identifier == number_literal)) )) || (parenthesized_expression "(uVar47 != 100)" ( (binary_expression "uVar47 != 100" identifier != number_literal) ))) )) (compound_statement "{\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }" { (if_statement "if (uVar47 != 100) goto LAB_002c5754;" if (parenthesized_expression "(uVar47 != 100)" ( (binary_expression "uVar47 != 100" identifier != number_literal) )) (goto_statement "goto LAB_002c5754;" goto statement_identifier ;)) (expression_statement "uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;" (assignment_expression "uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00" identifier = (binary_expression "uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00" (binary_expression "uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb)" (binary_expression "uVar29 >> 5 & 0x1f" (binary_expression "uVar29 >> 5" identifier >> number_literal) & number_literal) | (call_expression "(ushort)((uVar45 & 0x1f0000) >> 0xb)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "((uVar45 & 0x1f0000) >> 0xb)" ( (binary_expression "(uVar45 & 0x1f0000) >> 0xb" (parenthesized_expression "(uVar45 & 0x1f0000)" ( (binary_expression "uVar45 & 0x1f0000" identifier & number_literal) )) >> number_literal) )))) | (binary_expression "uVar15 & 0xfc00" identifier & number_literal))) ;) })))) (labeled_statement "LAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;" statement_identifier : (expression_statement "*(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;" (assignment_expression "*(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" * (cast_expression "(ushort *)((long)param_10 + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_10 + 2)" ( (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = (binary_expression "(ushort)uVar31 << 8 | (ushort)uVar31 >> 8" (binary_expression "(ushort)uVar31 << 8" (cast_expression "(ushort)uVar31" ( (type_descriptor "ushort" type_identifier) ) identifier) << number_literal) | (binary_expression "(ushort)uVar31 >> 8" (cast_expression "(ushort)uVar31" ( (type_descriptor "ushort" type_identifier) ) identifier) >> number_literal))) ;)) (expression_statement "*(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;" (assignment_expression "*(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8" (pointer_expression "*(ushort *)param_10" * (cast_expression "(ushort *)param_10" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar29 << 8 | uVar29 >> 8" (binary_expression "uVar29 << 8" identifier << number_literal) | (binary_expression "uVar29 >> 8" identifier >> number_literal))) ;) }) (else_clause "else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }" else (if_statement "if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }" if (parenthesized_expression "(((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b))" ( (binary_expression "((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)" (parenthesized_expression "((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0))" ( (binary_expression "(uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)" (parenthesized_expression "(uVar17 < 0x29)" ( (binary_expression "uVar17 < 0x29" identifier < number_literal) )) && (parenthesized_expression "((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)" ( (binary_expression "(0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0" (parenthesized_expression "(0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1)" ( (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f)" number_literal >> (parenthesized_expression "((ulong)uVar17 & 0x3f)" ( (binary_expression "(ulong)uVar17 & 0x3f" (cast_expression "(ulong)uVar17" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) ))) & number_literal) )) != number_literal) ))) )) && (parenthesized_expression "(1 < uVar47 - 0x8b)" ( (binary_expression "1 < uVar47 - 0x8b" number_literal < (binary_expression "uVar47 - 0x8b" identifier - number_literal)) ))) )) (compound_statement "{\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }" { (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;" (assignment_expression "uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar29 = (ushort)(uVar31 >> 0x10);" (assignment_expression "uVar29 = (ushort)(uVar31 >> 0x10)" identifier = (call_expression "(ushort)(uVar31 >> 0x10)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(uVar31 >> 0x10)" ( (binary_expression "uVar31 >> 0x10" identifier >> number_literal) )))) ;) (goto_statement "goto LAB_002c5471;" goto statement_identifier ;) })))) (if_statement "if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }" if (parenthesized_expression "(uVar16 == 1)" ( (binary_expression "uVar16 == 1" identifier == number_literal) )) (compound_statement "{\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }" { (if_statement "if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }" { (expression_statement "lVar30 = plVar3[1];" (assignment_expression "lVar30 = plVar3[1]" identifier = (subscript_expression "plVar3[1]" identifier [ number_literal ])) ;) (expression_statement "uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");" (assignment_expression "uVar21 = gettext("relocation overflow: %u against local symbol %u in %s")" identifier = (call_expression "gettext("relocation overflow: %u against local symbol %u in %s")" identifier (argument_list "("relocation overflow: %u against local symbol %u in %s")" ( (string_literal ""relocation overflow: %u against local symbol %u in %s"" " string_content ") )))) ;) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30)" identifier (argument_list "(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30)" ( identifier , identifier , identifier , identifier , identifier , identifier , identifier ))) ;) }) (else_clause "else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }" else (compound_statement "{\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }" { (if_statement "if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }" if (parenthesized_expression "((*(byte *)((long)param_8 + 0x3a) & 7) == 0)" ( (binary_expression "(*(byte *)((long)param_8 + 0x3a) & 7) == 0" (parenthesized_expression "(*(byte *)((long)param_8 + 0x3a) & 7)" ( (binary_expression "*(byte *)((long)param_8 + 0x3a) & 7" (pointer_expression "*(byte *)((long)param_8 + 0x3a)" * (cast_expression "(byte *)((long)param_8 + 0x3a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x3a)" ( (binary_expression "(long)param_8 + 0x3a" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }" { (if_statement "if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }" if (parenthesized_expression "((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0)" ( (binary_expression "(*(byte *)((long)param_8 + 0x3b) & 0x20) == 0" (parenthesized_expression "(*(byte *)((long)param_8 + 0x3b) & 0x20)" ( (binary_expression "*(byte *)((long)param_8 + 0x3b) & 0x20" (pointer_expression "*(byte *)((long)param_8 + 0x3b)" * (cast_expression "(byte *)((long)param_8 + 0x3b)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x3b)" ( (binary_expression "(long)param_8 + 0x3b" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }" { (expression_statement "bVar52 = FUN_00443190();" (assignment_expression "bVar52 = FUN_00443190()" identifier = (call_expression "FUN_00443190()" identifier (argument_list "()" ( )))) ;) (expression_statement "bVar52 = bVar52 ^ 1;" (assignment_expression "bVar52 = bVar52 ^ 1" identifier = (binary_expression "bVar52 ^ 1" identifier ^ number_literal)) ;) }) (else_clause "else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }" else (compound_statement "{\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }" { (expression_statement "bVar52 = *(int *)(param_8 + 3) != 0;" (assignment_expression "bVar52 = *(int *)(param_8 + 3) != 0" identifier = (binary_expression "*(int *)(param_8 + 3) != 0" (pointer_expression "*(int *)(param_8 + 3)" * (cast_expression "(int *)(param_8 + 3)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 3)" ( (binary_expression "param_8 + 3" identifier + number_literal) )))) != number_literal)) ;) }))) }) (else_clause "else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }" else (compound_statement "{\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }" { (expression_statement "bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;" (assignment_expression "bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4" identifier = (binary_expression "(*(byte *)((long)param_8 + 0x3a) & 7) != 4" (parenthesized_expression "(*(byte *)((long)param_8 + 0x3a) & 7)" ( (binary_expression "*(byte *)((long)param_8 + 0x3a) & 7" (pointer_expression "*(byte *)((long)param_8 + 0x3a)" * (cast_expression "(byte *)((long)param_8 + 0x3a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x3a)" ( (binary_expression "(long)param_8 + 0x3a" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) )) != number_literal)) ;) }))) (if_statement "if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }" if (parenthesized_expression "((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0))" ( (binary_expression "(bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)" (parenthesized_expression "(bVar52 == 0)" ( (binary_expression "bVar52 == 0" identifier == number_literal) )) || (parenthesized_expression "((*(byte *)((long)param_8 + 0x3a) & 7) != 0)" ( (binary_expression "(*(byte *)((long)param_8 + 0x3a) & 7) != 0" (parenthesized_expression "(*(byte *)((long)param_8 + 0x3a) & 7)" ( (binary_expression "*(byte *)((long)param_8 + 0x3a) & 7" (pointer_expression "*(byte *)((long)param_8 + 0x3a)" * (cast_expression "(byte *)((long)param_8 + 0x3a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x3a)" ( (binary_expression "(long)param_8 + 0x3a" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }" { (expression_statement "FUN_004443d0(local_58,param_8);" (call_expression "FUN_004443d0(local_58,param_8)" identifier (argument_list "(local_58,param_8)" ( identifier , identifier ))) ;) (expression_statement "puVar8 = local_58[0];" (assignment_expression "puVar8 = local_58[0]" identifier = (subscript_expression "local_58[0]" identifier [ number_literal ])) ;) (expression_statement "uVar21 = gettext("relocation overflow: %u against \'%s\'");" (assignment_expression "uVar21 = gettext("relocation overflow: %u against \'%s\'")" identifier = (call_expression "gettext("relocation overflow: %u against \'%s\'")" identifier (argument_list "("relocation overflow: %u against \'%s\'")" ( (string_literal ""relocation overflow: %u against \'%s\'"" " string_content escape_sequence string_content escape_sequence ") )))) ;) comment (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8)" identifier (argument_list "(param_2,param_6,uVar35,uVar21,uVar47,puVar8)" ( identifier , identifier , identifier , identifier , identifier , identifier ))) ;) (if_statement "if (local_58[0] == auStack_48) goto LAB_002c53ec;" if (parenthesized_expression "(local_58[0] == auStack_48)" ( (binary_expression "local_58[0] == auStack_48" (subscript_expression "local_58[0]" identifier [ number_literal ]) == identifier) )) (goto_statement "goto LAB_002c53ec;" goto statement_identifier ;)) }) (else_clause "else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }" else (compound_statement "{\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }" { (expression_statement "uVar21 = *(undefined8 *)(param_8[2] + 8);" (assignment_expression "uVar21 = *(undefined8 *)(param_8[2] + 8)" identifier = (pointer_expression "*(undefined8 *)(param_8[2] + 8)" * (cast_expression "(undefined8 *)(param_8[2] + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8[2] + 8)" ( (binary_expression "param_8[2] + 8" (subscript_expression "param_8[2]" identifier [ number_literal ]) + number_literal) ))))) ;) (expression_statement "FUN_004443d0(local_58,param_8);" (call_expression "FUN_004443d0(local_58,param_8)" identifier (argument_list "(local_58,param_8)" ( identifier , identifier ))) ;) (expression_statement "puVar8 = local_58[0];" (assignment_expression "puVar8 = local_58[0]" identifier = (subscript_expression "local_58[0]" identifier [ number_literal ])) ;) (expression_statement "uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");" (assignment_expression "uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s")" identifier = (call_expression "gettext("relocation overflow: %u against \'%s\' defined in %s")" identifier (argument_list "("relocation overflow: %u against \'%s\' defined in %s")" ( (string_literal ""relocation overflow: %u against \'%s\' defined in %s"" " string_content escape_sequence string_content escape_sequence string_content ") )))) ;) comment (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21)" identifier (argument_list "(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21)" ( identifier , identifier , identifier , identifier , identifier , identifier , identifier ))) ;) (if_statement "if (local_58[0] == auStack_48) goto LAB_002c53ec;" if (parenthesized_expression "(local_58[0] == auStack_48)" ( (binary_expression "local_58[0] == auStack_48" (subscript_expression "local_58[0]" identifier [ number_literal ]) == identifier) )) (goto_statement "goto LAB_002c53ec;" goto statement_identifier ;)) }))) (expression_statement "FUN_0049e340();" (call_expression "FUN_0049e340()" identifier (argument_list "()" ( ))) ;) }))) }) (else_clause "else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }" else (if_statement "if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }" if (parenthesized_expression "(uVar16 != 0)" ( (binary_expression "uVar16 != 0" identifier != number_literal) )) (compound_statement "{\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }" { (if_statement "if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }" if (parenthesized_expression "(uVar16 == 2)" ( (binary_expression "uVar16 == 2" identifier == number_literal) )) (compound_statement "{\n            pcVar42 = "unexpected opcode while processing relocation";\n          }" { (expression_statement "pcVar42 = "unexpected opcode while processing relocation";" (assignment_expression "pcVar42 = "unexpected opcode while processing relocation"" identifier = (string_literal ""unexpected opcode while processing relocation"" " string_content ")) ;) }) (else_clause "else {\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }" else (compound_statement "{\n            if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }" { (if_statement "if (uVar16 != 3) {\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }" if (parenthesized_expression "(uVar16 != 3)" ( (binary_expression "uVar16 != 3" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }" { comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x3035,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x3035,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;) })) (expression_statement "pcVar42 = "unaligned PC-relative relocation";" (assignment_expression "pcVar42 = "unaligned PC-relative relocation"" identifier = (string_literal ""unaligned PC-relative relocation"" " string_content ")) ;) }))) (expression_statement "uVar21 = gettext(pcVar42);" (assignment_expression "uVar21 = gettext(pcVar42)" identifier = (call_expression "gettext(pcVar42)" identifier (argument_list "(pcVar42)" ( identifier )))) ;) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21)" identifier (argument_list "(param_2,param_6,uVar35,uVar21)" ( identifier , identifier , identifier , identifier ))) ;) })))) (labeled_statement "LAB_002c53ec:\n        FUN_001a5bc0(&local_78);" statement_identifier : (expression_statement "FUN_001a5bc0(&local_78);" (call_expression "FUN_001a5bc0(&local_78)" identifier (argument_list "(&local_78)" ( (pointer_expression "&local_78" & identifier) ))) ;)) (return_statement "return 1;" return number_literal ;) })) (expression_statement "uVar17 = *puVar44;" (assignment_expression "uVar17 = *puVar44" identifier = (pointer_expression "*puVar44" * identifier)) ;) (goto_statement "goto LAB_002c4f1d;" goto statement_identifier ;) })) (expression_statement "FUN_00290a30();" (call_expression "FUN_00290a30()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_002c8217;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c52f0;" goto statement_identifier ;) (labeled_statement "LAB_002c82c4:\n  FUN_00293370();" statement_identifier : (expression_statement "FUN_00293370();" (call_expression "FUN_00293370()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c82c9:\n  uVar36 = (uint)uVar34;" statement_identifier : (expression_statement "uVar36 = (uint)uVar34;" (assignment_expression "uVar36 = (uint)uVar34" identifier = (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier)) ;)) (if_statement "if ((char)puVar44 == '\0') {\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }\n  else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00291e90();\n    }\n  }" if (parenthesized_expression "((char)puVar44 == '\0')" ( (binary_expression "(char)puVar44 == '\0'" (cast_expression "(char)puVar44" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }" { (labeled_statement "LAB_002c5869:\n    lVar30 = param_8[0x10];" statement_identifier : (expression_statement "lVar30 = param_8[0x10];" (assignment_expression "lVar30 = param_8[0x10]" identifier = (subscript_expression "param_8[0x10]" identifier [ number_literal ])) ;)) (labeled_statement "LAB_002c5870:\n    local_d0 = (uint *)&local_78;" statement_identifier : (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;)) (expression_statement "local_68 = FUN_00298450(lVar30,lVar30 + 8);" (assignment_expression "local_68 = FUN_00298450(lVar30,lVar30 + 8)" identifier = (call_expression "FUN_00298450(lVar30,lVar30 + 8)" identifier (argument_list "(lVar30,lVar30 + 8)" ( identifier , (binary_expression "lVar30 + 8" identifier + number_literal) )))) ;) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) (expression_statement "bVar48 = true;" (assignment_expression "bVar48 = true" identifier = true) ;) (expression_statement "local_e1 = true;" (assignment_expression "local_e1 = true" identifier = true) ;) }) (else_clause "else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00291e90();\n    }\n  }" else (compound_statement "{\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00291e90();\n    }\n  }" { (labeled_statement "LAB_002c4d83:\n    uVar36 = (uint)uVar34;" statement_identifier : (expression_statement "uVar36 = (uint)uVar34;" (assignment_expression "uVar36 = (uint)uVar34" identifier = (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier)) ;)) (if_statement "if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;" if (parenthesized_expression "(*(int *)((long)param_8 + 0x4c) != -1)" ( (binary_expression "*(int *)((long)param_8 + 0x4c) != -1" (pointer_expression "*(int *)((long)param_8 + 0x4c)" * (cast_expression "(int *)((long)param_8 + 0x4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x4c)" ( (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_002c5256;" goto statement_identifier ;)) (expression_statement "bVar48 = true;" (assignment_expression "bVar48 = true" identifier = true) ;) (labeled_statement "LAB_002c4d98:\n    local_d0 = (uint *)&local_78;" statement_identifier : (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;)) (if_statement "if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00291e90();\n    }" if (parenthesized_expression "(((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1))" ( (binary_expression "((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)" (parenthesized_expression "((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1))" ( (binary_expression "(*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)" (parenthesized_expression "(*(int *)((long)param_8 + 0x24) != -1)" ( (binary_expression "*(int *)((long)param_8 + 0x24) != -1" (pointer_expression "*(int *)((long)param_8 + 0x24)" * (cast_expression "(int *)((long)param_8 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x24)" ( (binary_expression "(long)param_8 + 0x24" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(int *)((long)param_8 + 0x6c) != -1)" ( (binary_expression "*(int *)((long)param_8 + 0x6c) != -1" (pointer_expression "*(int *)((long)param_8 + 0x6c)" * (cast_expression "(int *)((long)param_8 + 0x6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x6c)" ( (binary_expression "(long)param_8 + 0x6c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(*(int *)(param_8 + 0xd) != -1)" ( (binary_expression "*(int *)(param_8 + 0xd) != -1" (pointer_expression "*(int *)(param_8 + 0xd)" * (cast_expression "(int *)(param_8 + 0xd)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 0xd)" ( (binary_expression "param_8 + 0xd" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_00291e90();\n    }" { (expression_statement "lVar30 = *(long *)(param_4 + 0x30);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x30)" identifier = (pointer_expression "*(long *)(param_4 + 0x30)" * (cast_expression "(long *)(param_4 + 0x30)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x30)" ( (binary_expression "param_4 + 0x30" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 == 0) goto LAB_002c833d;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c833d;" goto statement_identifier ;)) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }" if (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) != 0)" ( (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) != 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }" { (expression_statement "local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);" (assignment_expression "local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8)" identifier = (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1" (pointer_expression "*(int *)((long)param_8 + 0x6c)" * (cast_expression "(int *)((long)param_8 + 0x6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x6c)" ( (binary_expression "(long)param_8 + 0x6c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) + number_literal) + (pointer_expression "*(int *)(lVar30 + 0x68)" * (cast_expression "(int *)(lVar30 + 0x68)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x68)" ( (binary_expression "lVar30 + 0x68" identifier + number_literal) ))))) + (pointer_expression "*(int *)(lVar30 + 0x60)" * (cast_expression "(int *)(lVar30 + 0x60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x60)" ( (binary_expression "lVar30 + 0x60" identifier + number_literal) ))))) + (pointer_expression "*(int *)(lVar30 + 8)" * (cast_expression "(int *)(lVar30 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) )))))) ;) (if_statement "if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }" if (parenthesized_expression "(*(char *)(param_4 + 0x14) != '\0')" ( (binary_expression "*(char *)(param_4 + 0x14) != '\0'" (pointer_expression "*(char *)(param_4 + 0x14)" * (cast_expression "(char *)(param_4 + 0x14)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x14)" ( (binary_expression "param_4 + 0x14" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }" { (expression_statement "bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;" (assignment_expression "bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0" identifier = (binary_expression "(*(uint *)(param_4 + 0x10) & 0x2000000) == 0" (parenthesized_expression "(*(uint *)(param_4 + 0x10) & 0x2000000)" ( (binary_expression "*(uint *)(param_4 + 0x10) & 0x2000000" (pointer_expression "*(uint *)(param_4 + 0x10)" * (cast_expression "(uint *)(param_4 + 0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x10)" ( (binary_expression "param_4 + 0x10" identifier + number_literal) )))) & number_literal) )) == number_literal)) ;) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) (expression_statement "puVar44 = (uint *)(ulong)bVar49;" (assignment_expression "puVar44 = (uint *)(ulong)bVar49" identifier = (cast_expression "(uint *)(ulong)bVar49" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)bVar49" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "uVar17 = (uint)!bVar49;" (assignment_expression "uVar17 = (uint)!bVar49" identifier = (cast_expression "(uint)!bVar49" ( (type_descriptor "uint" type_identifier) ) (unary_expression "!bVar49" ! identifier))) ;) (goto_statement "goto LAB_002c4e20;" goto statement_identifier ;) })) (labeled_statement "LAB_002c83ab:\n        FUN_00290d80();" statement_identifier : (expression_statement "FUN_00290d80();" (call_expression "FUN_00290d80()" identifier (argument_list "()" ( ))) ;)) })) comment (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" identifier (argument_list "()" ( ))) ;) })) }))) (labeled_statement "LAB_002c4e20:\n  local_98._0_1_ = (byte)uVar17;" statement_identifier : (expression_statement "local_98._0_1_ = (byte)uVar17;" (assignment_expression "local_98._0_1_ = (byte)uVar17" (field_expression "local_98._0_1_" identifier . field_identifier) = (cast_expression "(byte)uVar17" ( (type_descriptor "byte" type_identifier) ) identifier)) ;)) (expression_statement "bVar49 = (bool)((byte)local_98 & bVar48);" (assignment_expression "bVar49 = (bool)((byte)local_98 & bVar48)" identifier = (cast_expression "(bool)((byte)local_98 & bVar48)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "((byte)local_98 & bVar48)" ( (binary_expression "(byte)local_98 & bVar48" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) & identifier) )))) ;) (goto_statement "goto joined_r0x002c52d3;" goto statement_identifier ;) (labeled_statement "switchD_002c4f87_caseD_9:\n  bVar48 = false;" statement_identifier : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;)) (labeled_statement "switchD_002c5379_caseD_9:\n  if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }" statement_identifier : (if_statement "if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }" { (if_statement "if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }" if (parenthesized_expression "(param_3 == 4)" ( (binary_expression "param_3 == 4" identifier == number_literal) )) (compound_statement "{\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }" { (expression_statement "uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);" (assignment_expression "uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1)" identifier = (call_expression "FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1)" identifier (argument_list "(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1)" ( identifier , identifier , identifier , identifier , identifier , number_literal , identifier , identifier , identifier )))) ;) }) (else_clause "else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }" else (compound_statement "{\n      if (param_3 != 9) {\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }" { (if_statement "if (param_3 != 9) {\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }" if (parenthesized_expression "(param_3 != 9)" ( (binary_expression "param_3 != 9" identifier != number_literal) )) (compound_statement "{\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }" { (labeled_statement "LAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");" statement_identifier : comment (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2f66,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;)) })) (expression_statement "lVar30 = FUN_0049cb70(0x40);" (assignment_expression "lVar30 = FUN_0049cb70(0x40)" identifier = (call_expression "FUN_0049cb70(0x40)" identifier (argument_list "(0x40)" ( number_literal )))) ;) (expression_statement "*(undefined1 *)(lVar30 + 0x3c) = 0;" (assignment_expression "*(undefined1 *)(lVar30 + 0x3c) = 0" (pointer_expression "*(undefined1 *)(lVar30 + 0x3c)" * (cast_expression "(undefined1 *)(lVar30 + 0x3c)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x3c)" ( (binary_expression "lVar30 + 0x3c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(undefined4 *)(lVar30 + 0x38) = 0;" (assignment_expression "*(undefined4 *)(lVar30 + 0x38) = 0" (pointer_expression "*(undefined4 *)(lVar30 + 0x38)" * (cast_expression "(undefined4 *)(lVar30 + 0x38)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x38)" ( (binary_expression "lVar30 + 0x38" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(ulong **)(lVar30 + 0x10) = param_10;" (assignment_expression "*(ulong **)(lVar30 + 0x10) = param_10" (pointer_expression "*(ulong **)(lVar30 + 0x10)" * (cast_expression "(ulong **)(lVar30 + 0x10)" ( (type_descriptor "ulong **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x10)" ( (binary_expression "lVar30 + 0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(long **)(lVar30 + 0x18) = plVar3;" (assignment_expression "*(long **)(lVar30 + 0x18) = plVar3" (pointer_expression "*(long **)(lVar30 + 0x18)" * (cast_expression "(long **)(lVar30 + 0x18)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x18)" ( (binary_expression "lVar30 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(lVar30 + 0x20) = param_9;" (assignment_expression "*(uint **)(lVar30 + 0x20) = param_9" (pointer_expression "*(uint **)(lVar30 + 0x20)" * (cast_expression "(uint **)(lVar30 + 0x20)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x28) = local_c8;" (assignment_expression "*(uint *)(lVar30 + 0x28) = local_c8" (pointer_expression "*(uint *)(lVar30 + 0x28)" * (cast_expression "(uint *)(lVar30 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x28)" ( (binary_expression "lVar30 + 0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x2c) = uVar17;" (assignment_expression "*(uint *)(lVar30 + 0x2c) = uVar17" (pointer_expression "*(uint *)(lVar30 + 0x2c)" * (cast_expression "(uint *)(lVar30 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x2c)" ( (binary_expression "lVar30 + 0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x30) = uVar7;" (assignment_expression "*(uint *)(lVar30 + 0x30) = uVar7" (pointer_expression "*(uint *)(lVar30 + 0x30)" * (cast_expression "(uint *)(lVar30 + 0x30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x30)" ( (binary_expression "lVar30 + 0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(bool *)(lVar30 + 0x34) = bVar48;" (assignment_expression "*(bool *)(lVar30 + 0x34) = bVar48" (pointer_expression "*(bool *)(lVar30 + 0x34)" * (cast_expression "(bool *)(lVar30 + 0x34)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x34)" ( (binary_expression "lVar30 + 0x34" identifier + number_literal) )))) = identifier) ;) (expression_statement "FUN_004a11e0(lVar30,&DAT_0067db20);" (call_expression "FUN_004a11e0(lVar30,&DAT_0067db20)" identifier (argument_list "(lVar30,&DAT_0067db20)" ( identifier , (pointer_expression "&DAT_0067db20" & identifier) ))) ;) (expression_statement "_DAT_0067db30 = _DAT_0067db30 + 1;" (assignment_expression "_DAT_0067db30 = _DAT_0067db30 + 1" identifier = (binary_expression "_DAT_0067db30 + 1" identifier + number_literal)) ;) }))) (goto_statement "goto LAB_002c624f;" goto statement_identifier ;) }))) (if_statement "if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8333;" if (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" ( (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_002c8333;" goto statement_identifier ;)) (expression_statement "puVar40 = param_8;" (assignment_expression "puVar40 = param_8" identifier = identifier) ;) (expression_statement "local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3)" identifier = (call_expression "FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3)" identifier (argument_list "(*(long *)(param_4 + 0x20),param_8,0,plVar3)" ( (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) , identifier , number_literal , identifier )))) ;) (expression_statement "local_98._0_1_ = (byte)puVar40;" (assignment_expression "local_98._0_1_ = (byte)puVar40" (field_expression "local_98._0_1_" identifier . field_identifier) = (cast_expression "(byte)puVar40" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) goto LAB_002c6206;" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (goto_statement "goto LAB_002c6206;" goto statement_identifier ;)) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_002c6490:\n  uVar17 = (uint)(byte)local_98;" statement_identifier : (expression_statement "uVar17 = (uint)(byte)local_98;" (assignment_expression "uVar17 = (uint)(byte)local_98" identifier = (cast_expression "(uint)(byte)local_98" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier))) ;)) (labeled_statement "LAB_002c64ab:\n  local_d0 = (uint *)&local_78;" statement_identifier : (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;)) (expression_statement "local_68 = FUN_00298450();" (assignment_expression "local_68 = FUN_00298450()" identifier = (call_expression "FUN_00298450()" identifier (argument_list "()" ( )))) ;) (expression_statement "bVar49 = uVar47 == 100;" (assignment_expression "bVar49 = uVar47 == 100" identifier = (binary_expression "uVar47 == 100" identifier == number_literal)) ;) (expression_statement "puVar44 = (uint *)0x0;" (assignment_expression "puVar44 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if ((uVar36 & 0xf7) == 0x85) goto LAB_002c7a61;" if (parenthesized_expression "((uVar36 & 0xf7) == 0x85)" ( (binary_expression "(uVar36 & 0xf7) == 0x85" (parenthesized_expression "(uVar36 & 0xf7)" ( (binary_expression "uVar36 & 0xf7" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_002c7a61;" goto statement_identifier ;)) (expression_statement "local_e1 = true;" (assignment_expression "local_e1 = true" identifier = true) ;) (expression_statement "bVar48 = bVar49;" (assignment_expression "bVar48 = bVar49" identifier = identifier) ;) (labeled_statement "LAB_002c64da:\n  local_d0 = (uint *)&local_78;" statement_identifier : (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;)) (expression_statement "puVar44 = (uint *)0x0;" (assignment_expression "puVar44 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) (goto_statement "goto LAB_002c4e43;" goto statement_identifier ;) (labeled_statement "LAB_002c7a61:\n  param_9 = local_d0;" statement_identifier : (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;)) (expression_statement "local_e1 = true;" (assignment_expression "local_e1 = true" identifier = true) ;) (goto_statement "goto LAB_002c4e56;" goto statement_identifier ;) })))
(ERROR "/* WARNING: Type propagation algorithm not settling */\n/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */\n/* WARNING: Enum "DT": Some values do not have unique names */\n/* WARNING: Enum "ELFOSABI": Some values do not have unique names */\n/* DWARF original prototype: bool relocate(Relocate * this, Relocate_info<32,_true> * relinfo, uint\n   rel_type, Target_mips<32,_true> * target, Output_section * output_section, size_t relnum, uchar *\n   preloc, Sized_symbol<32> * gsym, Symbol_value<32> * psymval, uchar * view, Mips_address address,\n   section_size_type param_11) */\n\nbool __thiscall\nanon_unknown.dwarf_ead2ad::Target_mips<32,_true>::Relocate::relocate\n          (Relocate *this,Relocate_info<32,_true> *relinfo,uint rel_type,\n          Target_mips<32,_true> *target,Output_section *output_section,size_t relnum,uchar *preloc,\n          Sized_symbol<32> *gsym,Symbol_value<32> *psymval,uchar *view,Mips_address address,\n          section_size_type param_11)\n\n{\n  uint64_t *puVar1;\n  _Base_ptr *pp_Var2;\n  _Rb_tree_header *p_Var3;\n  byte bVar4;\n  Mips_address address_00;\n  Mips_address MVar5;\n  Mips_relobj<32,_false> *this_00;\n  Mips_output_data_mips_stubs<32,_true> *pMVar6;\n  Mips_output_data_plt<32,_true> *pMVar7;\n  Mips_output_data_la25_stub<32,_true> *pMVar8;\n  uint64_t uVar9;\n  undefined8 uVar10;\n  ulong uVar11;\n  _Bit_type *p_Var12;\n  pointer pcVar13;\n  _Rb_tree_color _Var14;\n  _Alloc_hider _Var15;\n  bool bVar16;\n  byte bVar17;\n  byte bVar18;\n  ushort uVar19;\n  Valtype x;\n  Value VVar20;\n  uint uVar21;\n  uint uVar22;\n  uint uVar23;\n  Value VVar24;\n  int iVar25;\n  uint uVar26;\n  Status SVar27;\n  char *pcVar28;\n  ulong uVar29;\n  Mips_got_info<32,_true> *pMVar30;\n  _List_node_base *p_Var31;\n  Mips_relobj<32,_false> *pMVar32;\n  _Base_ptr p_Var33;\n  Sized_symbol<32> *pSVar34;\n  Mips_relobj<32,_false> *pMVar35;\n  _Base_ptr p_Var36;\n  _Base_ptr p_Var37;\n  ushort uVar38;\n  Value_type VVar39;\n  long lVar40;\n  bool jal_shuffle;\n  int extraout_EDX;\n  uint uVar41;\n  Mips_relobj<32,_false> *extraout_RDX;\n  Mips_relobj<32,_false> *pMVar42;\n  ulong uVar43;\n  Symbol_value<32> *extraout_RDX_00;\n  Symbol_value<32> *extraout_RDX_01;\n  undefined7 uVar46;\n  Symbol_value<32> *pSVar44;\n  Mips_relobj<32,_true> *extraout_RDX_02;\n  Mips_relobj<32,_true> *extraout_RDX_03;\n  Mips_relobj<32,_true> *pMVar45;\n  char cVar47;\n  uint uVar48;\n  uint uVar49;\n  Relocate *pRVar50;\n  Mips_output_data_got<32,_true> *pMVar51;\n  Mips_address value;\n  Mips_symbol<64> *sym;\n  _List_node_base **object;\n  byte *pbVar52;\n  Mips_relobj<32,_false> *pMVar53;\n  Target_mips<32,_true> *pTVar54;\n  _Base_ptr p_Var55;\n  size_t sVar56;\n  undefined1 uVar57;\n  uint *puVar58;\n  ulong uVar59;\n  uint uVar60;\n  bool bVar61;\n  bool bVar62;\n  bool bVar63;\n  bool bVar64;\n  undefined1 in_stack_fffffffffffffeb8;\n  Symbol *in_stack_fffffffffffffec0;\n  undefined1 in_stack_fffffffffffffec8;\n  uint in_stack_fffffffffffffed0;\n  _List_node_base *in_stack_fffffffffffffed8;\n  _List_node_base *in_stack_fffffffffffffee0;\n  _List_node_base *in_stack_fffffffffffffee8;\n  undefined4 uVar65;\n  _List_node_base *local_108;\n  uint local_f8;\n  uint local_f4;\n  byte local_ec;\n  uint local_e8;\n  byte local_e3;\n  bool local_e2;\n  bool local_e1;\n  Mips_relobj<32,_false> *local_d0;\n  uint local_c8;\n  uint local_c4;\n  ulong local_c0;\n  uint local_b0;\n  _List_node_base *local_98;\n  uint r_types [3];\n  Symbol_value<32> symval;\n  string local_58;\n  \n  bVar18 = 0;\n  uVar21 = *(uint *)(relinfo->reloc_shdr + 0x14);\n  uVar60 = *(uint *)(relinfo->reloc_shdr + 0x24);\n  uVar43 = (ulong)(uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 |\n                  uVar21 << 0x18) /\n           (ulong)(uVar60 >> 0x18 | (uVar60 & 0xff0000) >> 8 | (uVar60 & 0xff00) << 8 |\n                  uVar60 << 0x18);\n  uVar21 = *(uint *)preloc;\n  uVar48 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n  uVar21 = *(uint *)(preloc + 4);\n  uVar60 = uVar21 >> 0x18;\n  uVar49 = uVar60 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n  _Var14 = uVar49 >> 8;\n  if (rel_type == 4) {\n    local_c4 = 0;\n    uVar23 = *(uint *)(preloc + 8);\n    local_b0 = 0xffffffff;\n    local_c8 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;\n    if (relnum + 1 < uVar43) {\n      uVar23 = *(uint *)(preloc + 0xc);\n      local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18\n      ;\n      local_c4 = *(uint *)(preloc + 0x10) >> 0x18;\n    }\n  }\n  else if (relnum + 1 < uVar43) {\n    local_c8 = 0;\n    uVar23 = *(uint *)(preloc + 8);\n    local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;\n    local_c4 = *(uint *)(preloc + 0xc) >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }\n  symval._8_4_ = 0x80000000;\n  symval.u_.value = 0;\n  this_00 = (Mips_relobj<32,_false> *)relinfo->object;\n  symval.output_symtab_index_ = 0;\n  symval.output_dynsym_index_ = 0xffffffff;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    object = (_List_node_base **)(ulong)_Var14;\n    p_Var12 = (this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl.\n              super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p;\n    if ((Mips_relobj<32,_false> *)\n        (((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl\n               .super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_offset) <= object) {\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar21 & 0xff0000) >> 0x10);\n    uVar29 = 1L << (local_ec & 0x3f);\n    uVar43 = p_Var12[uVar49 >> 0xe];\n    p_Var12 = (this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n              _M_impl.super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p;\n    uVar59 = uVar29 & uVar43;\n    puVar58 = (uint *)(ulong)(uVar59 != 0);\n    sVar56 = (size_t)(this_00->local_symbol_is_micromips_).\n                     super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                     _M_start.super__Bit_iterator_base._M_offset;\n    if ((Mips_relobj<32,_false> *)\n        (((ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) - sVar56) <= object) {\nLAB_002c821c:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar11 = p_Var12[uVar49 >> 0xe];\n    uVar21 = (uint)((uVar29 & uVar11) != 0);\n    local_e1 = ((uVar43 | uVar11) & uVar29) != 0;\n    if (local_e1) {\n      object = (_List_node_base **)this_00;\n                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */\n      symval.u_.value =\n           gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,1);\n      psymval = &symval;\n    }\n    if (uVar60 == 100) {\n      p_Var55 = (((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header._M_header._M_parent;\n      p_Var3 = &(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header;\n      if (p_Var55 != (_Base_ptr)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        p_Var37 = p_Var55;\n        p_Var36 = &p_Var3->_M_header;\n        do {\n          if (p_Var37[1]._M_color < _Var14) {\n            p_Var33 = p_Var37->_M_right;\n          }\n          else {\n            p_Var33 = p_Var37->_M_left;\n            p_Var36 = p_Var37;\n          }\n          p_Var37 = p_Var33;\n        } while (p_Var33 != (_Base_ptr)0x0);\n        if (((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) &&\n           (p_Var36[1]._M_parent != (_Base_ptr)0x0)) {\n          p_Var37 = &p_Var3->_M_header;\n          if (uVar59 == 0) {\n            do {\n              p_Var36 = p_Var55;\n              if (p_Var36[1]._M_color < _Var14) {\n                p_Var55 = p_Var36->_M_right;\n                p_Var36 = p_Var37;\n              }\n              else {\n                p_Var55 = p_Var36->_M_left;\n              }\n              p_Var37 = p_Var36;\n            } while (p_Var55 != (_Base_ptr)0x0);\n            pMVar42 = (Mips_relobj<32,_false> *)0x0;\n            if ((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) {\n              pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;\n            }\n            puVar58 = (uint *)0x0;\n            local_f8 = 0;\n            goto LAB_002c5870;\n          }\n          puVar58 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      local_f8 = 0;\n      goto LAB_002c56df;\n    }\n    p_Var3 = &(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n              super__Rb_tree_header;\n    p_Var55 = (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n              super__Rb_tree_header._M_header._M_parent;\n    if (p_Var55 == (_Base_ptr)0x0) goto LAB_002c56d8;\n    object = (_List_node_base **)(ulong)_Var14;\n    p_Var37 = &p_Var3->_M_header;\n    do {\n      while (p_Var36 = p_Var55, p_Var36[1]._M_color < _Var14) {\n        pp_Var2 = &p_Var36->_M_right;\n        p_Var55 = *pp_Var2;\n        p_Var36 = p_Var37;\n        if (*pp_Var2 == (_Base_ptr)0x0) goto LAB_002c66ba;\n      }\n      p_Var55 = p_Var36->_M_left;\n      p_Var37 = p_Var36;\n    } while (p_Var36->_M_left != (_Base_ptr)0x0);\nLAB_002c66ba:\n    if (((p_Var3 == (_Rb_tree_header *)p_Var36) || (_Var14 < p_Var36[1]._M_color)) ||\n       (local_f8 = 0, p_Var36[1]._M_parent == (_Base_ptr)0x0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar21;\n    local_d0 = (Mips_relobj<32,_false> *)&symval;\n    uVar23 = relinfo->data_shndx;\n    object = (_List_node_base **)(ulong)uVar23;\n    pMVar53 = this_00;\n    bVar61 = Mips_relobj<32,_true>::is_mips16_stub_section((Mips_relobj<32,_true> *)this_00,uVar23);\n    if ((!bVar61) && (uVar23 != this_00->pdr_shndx_)) {\n      if (gsym == (Sized_symbol<32> *)0x0) {\n        pMVar53 = (Mips_relobj<32,_false> *)\n                  (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n                  super__Rb_tree_header._M_header._M_parent;\n        pMVar42 = (Mips_relobj<32,_false> *)\n                  &(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n                   super__Rb_tree_header;\n        pMVar35 = pMVar42;\n        if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c64ab;\n        do {\n          pMVar32 = pMVar53;\n          if (*(_Rb_tree_color *)\n               ((long)&(((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_.field_2 + 8) < _Var14) {\n            pMVar53 = (Mips_relobj<32,_false> *)\n                      (((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj).super_Object.name_.field_2._M_allocated_capacity;\n            pMVar32 = pMVar35;\n          }\n          else {\n            pMVar53 = (Mips_relobj<32,_false> *)\n                      (((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj).super_Object.name_._M_string_length;\n          }\n          pMVar35 = pMVar32;\n          if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)&gsym[1].super_Symbol.name_ == '\0') {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2d5f,"relocate");\n      }\n      iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n      if (iVar25 == -1) {\n        pMVar53 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_;\n        goto LAB_002c64ab;\n      }\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        bVar18 = (pMVar8->super_Output_section_data).super_Output_data.field_0x20;\n        uVar49 = bVar18 & 1;\n        object = (_List_node_base **)(ulong)uVar49;\n        local_e1 = SUB41(uVar49,0);\n        if ((bVar18 & 1) != 0) {\n          bVar62 = uVar60 == 100;\n          symval.u_.value =\n               iVar25 + (int)(pMVar8->super_Output_section_data).super_Output_data.address_;\n          bVar18 = 0;\n          bVar61 = bVar62;\n          if ((uVar60 & 0xf7) != 0x85) goto LAB_002c64da;\n          psymval = (Symbol_value<32> *)local_d0;\n          goto LAB_002c5150;\n        }\n                    /* WARNING: Subroutine does not return */\n        Mips_output_data_plt<64,_false>::mips_entry_address\n                  ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      pMVar45 = extraout_RDX_03;\n      goto LAB_002c82c4;\n    }\n    if (gsym == (Sized_symbol<32> *)0x0) {\nLAB_002c56df:\n      bVar61 = uVar60 == 100;\n      goto LAB_002c4e20;\n    }\n  }\n  else {\n    bVar17 = (byte)(gsym->super_Symbol).field_0x39 >> 2;\n    bVar61 = (bVar17 & 0x3c) == 0x3c;\n    puVar58 = (uint *)(ulong)bVar61;\n    bVar62 = (bVar17 & 0x30) == 0x20;\n    uVar21 = (uint)bVar62;\n    local_e1 = bVar62 || bVar61;\n    sVar56 = relnum;\n    if ((bVar62 || bVar61) &&\n       (VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0), VVar20 != 0)) {\n      VVar20 = gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,0)\n      ;\n      symval.u_.value = VVar20 | 1;\n      psymval = &symval;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (Mips_relobj<32,_false> *)&symval;\n    sym = (Mips_symbol<64> *)0x0;\n    if (uVar60 - 1 < 0xf9) {\n      sym = (Mips_symbol<64> *)(ulong)(uint)(int)(char)CSWTCH_4890[uVar60 - 1];\n    }\n    pMVar53 = (Mips_relobj<32,_false> *)gsym;\n                    /* try { // try from 002c4c4a to 002c54e2 has its CatchHandler @ 002c83b5 */\n    bVar61 = gold::Symbol::use_plt_offset(&gsym->super_Symbol,(int)sym);\n    cVar47 = *(char *)((long)&gsym[1].super_Symbol.symtab_index_ + 1);\n    if (bVar61) {\n      if (cVar47 != '\0') goto LAB_002c4c60;\n      uVar21 = gsym[1].super_Symbol.dynsym_index_;\n      pMVar7 = target->plt_;\n      if (uVar21 == 0xffffffff) {\n        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c8217:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\n          goto LAB_002c821c;\n        }\n        uVar21 = gsym[1].super_Symbol.plt_offset_;\n        if (uVar21 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }\n        bVar17 = target->field_0x14;\n        VVar20 = uVar21 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n                 pMVar7->plt0_entry_o32[2];\n        if (bVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          is_output_micromips((Target_mips<32,_true> *)pMVar53);\n        }\n        bVar61 = false;\n        bVar63 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n        if (bVar63) {\n          puVar58 = (uint *)(ulong)bVar17;\n          bVar17 = bVar62;\n        }\n        uVar21 = (uint)bVar17;\n      }\n      else {\n        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) goto LAB_002c81eb;\n        if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }\n        uVar21 = uVar21 + pMVar7->plt0_entry_o32[2];\n        puVar58 = (uint *)0x0;\n        bVar61 = CARRY4(uVar21,pMVar7->plt_header_size_);\n        VVar20 = uVar21 + pMVar7->plt_header_size_;\n        bVar63 = VVar20 == 0;\n        uVar21 = 0;\n      }\nLAB_002c4c88:\n      symval.u_.value = VVar20;\n      psymval = (Symbol_value<32> *)local_d0;\n    }\n    else {\n      bVar61 = false;\n      bVar63 = cVar47 == '\0';\n      if (!bVar63) {\nLAB_002c4c60:\n        pMVar6 = target->mips_stubs_;\n        if (pMVar6 == (Mips_output_data_mips_stubs<32,_true> *)0x0) {\n          mips_stubs_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81eb:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f0:\n          Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if (((pMVar6->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym);\n        }\n        uVar23 = *(uint *)((long)&gsym[1].super_Symbol.version_ + 4);\n        puVar1 = &(pMVar6->super_Output_section_data).super_Output_data.address_;\n        bVar61 = CARRY4(uVar23,(uint)*puVar1);\n        VVar20 = uVar23 + (int)*puVar1;\n        bVar63 = VVar20 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    pMVar42 = (Mips_relobj<32,_false> *)(gsym->super_Symbol).name_;\n    lVar40 = 9;\n    pMVar53 = pMVar42;\n    pbVar52 = (byte *)"_gp_disp";\n    do {\n      if (lVar40 == 0) break;\n      lVar40 = lVar40 + -1;\n      bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;\n      bVar61 = bVar17 < *pbVar52;\n      bVar63 = bVar17 == *pbVar52;\n      pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar53 + (ulong)bVar18 * -2 + 1);\n      pbVar52 = pbVar52 + (ulong)bVar18 * -2 + 1;\n    } while (bVar63);\n    lVar40 = 0xf;\n    bVar62 = !bVar61 && !bVar63;\n    bVar63 = bVar62 < bVar61;\n    bVar64 = bVar62 == bVar61;\n    pMVar35 = (Mips_relobj<32,_false> *)"__gnu_local_gp";\n    do {\n      object = (_List_node_base **)pMVar42;\n      pMVar53 = pMVar35;\n      if (lVar40 == 0) break;\n      lVar40 = lVar40 + -1;\n      pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar35 + (ulong)bVar18 * -2 + 1);\n      object = (_List_node_base **)((long)pMVar42 + (ulong)bVar18 * -2 + 1);\n      bVar4 = *(byte *)&(((Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;\n      bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;\n      bVar63 = bVar17 < bVar4;\n      bVar64 = bVar17 == bVar4;\n      pMVar42 = (Mips_relobj<32,_false> *)object;\n      pMVar35 = pMVar53;\n    } while (bVar64);\n    if (bVar62 == bVar61) {\n      object = (_List_node_base **)(ulong)(byte)this_00->field_0x36c;\n      bVar18 = (byte)this_00->field_0x36c >> 1 & 1 ^ 1;\n      if ((!bVar63 && !bVar64) == bVar63) {\n        if (bVar18 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar18 == 0) goto LAB_002c5078;\n      if (((1 < uVar60 - 0x68) && (1 < uVar60 - 5)) && ((1 < uVar60 - 0x86 && (1 < uVar60 - 0x40))))\n      {\n        pcVar28 = (char *)gettext(\n                                 "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                                 );\n        object = (_List_node_base **)relnum;\n        pMVar53 = (Mips_relobj<32,_false> *)relinfo;\n        gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);\n      }\n      local_f8 = 1;\n    }\n    else {\n      if ((!bVar63 && !bVar64) == bVar63) {\nLAB_002c51e0:\n        if (target->gp_ == (Sized_symbol<32> *)0x0) {\n          symval.u_.value = 0;\n          object = (_List_node_base **)target;\n        }\n        else {\n          symval.u_.value = target->gp_->value_;\n          object = (_List_node_base **)target;\n          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63;\n  uVar49 = (uint)(byte)cVar47;\n  if (this->calculate_only_ == false) {\n    this->calculate_only_ = (bool)cVar47;\n    switch(uVar21) {\n    default:\n      goto switchD_002c5379_caseD_0;\n    case 1:\n      local_c0._0_4_ = local_c8;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      if (bVar61 != false) {\n        local_c0._0_4_ = (uint)uVar19;\n        if ((short)uVar19 < 0) {\n          local_c0._0_4_ = uVar19 - 0x10000;\n        }\n      }\n      goto LAB_002c70ec;\n    case 2:\n      goto switchD_002c5379_caseD_2;\n    case 3:\n      goto switchD_002c4f87_caseD_3;\n    case 4:\n    case 100:\n    case 0x85:\n      bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n      local_c0 = (ulong)local_c8;\n      uVar49 = *(uint *)view;\n      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8;\n      uVar26 = uVar23 | uVar49 << 0x18;\n      if (bVar61 == false) {\nLAB_002c7644:\n        bVar16 = bVar61;\n        if (bVar64 == false) {\nLAB_002c764c:\n          uVar57 = SUB81(pTVar54,0);\n          bVar64 = gsym == (Sized_symbol<32> *)0x0;\n          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;\n          if (bVar64) {\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n          uVar49 = (uint)local_c0 & 0x7ffffff;\n          if ((local_c0 & 0x4000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }\n          goto LAB_002c73f5;\n        }\nLAB_002c7cf3:\n        bVar61 = bVar16;\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n        if ((VVar20 & 3) == (uint)(uVar21 == 4)) goto LAB_002c764c;\n        pcVar28 = (char *)gettext("JALX to a non-word-aligned address");\n        gold::gold_warning(pcVar28);\nLAB_002c7d32:\n        SVar27 = STATUS_BAD_RELOC;\n      }\n      else {\n        if (uVar21 == 0x85) {\n          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;\n          goto LAB_002c7644;\n        }\n        local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);\n        bVar16 = bVar64;\n        if (bVar64 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n        uVar57 = SUB81(pTVar54,0);\n        bVar64 = gsym == (Sized_symbol<32> *)0x0;\n        if (bVar64) {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = 0xf0000000;\nLAB_002c73e1:\n          bVar64 = true;\n          uVar49 = address + 4 & uVar49 | (uint)local_c0;\n        }\n        else {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }\nLAB_002c73f5:\n        object = (_List_node_base **)this_00;\n        pSVar34 = (Sized_symbol<32> *)psymval;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n        uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);\n        pSVar44 = extraout_RDX_00;\n        if (((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;\n          goto LAB_002c5940;\n        }\n        uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;\n        object = (_List_node_base **)(ulong)uVar23;\n        if (local_e3 != 0) {\n          uVar26 = uVar26 >> 0x1a;\n          uVar46 = (undefined7)((ulong)pSVar44 >> 8);\n          if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }\n          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }\n          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;\n        }\n        if (gold::parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);\n        }\n        if (!bVar62 || !bVar63) goto LAB_002c5ccb;\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = uVar23;\n      }\n      goto LAB_002c5940;\n    case 5:\n    case 0x68:\n    case 0x86:\n      goto switchD_002c5379_caseD_5;\n    case 6:\n    case 0x69:\n    case 0x87:\n    case 0x9d:\n      local_c0 = (ulong)local_c8;\n      in_stack_fffffffffffffed0 = *(uint *)view;\n      uVar23 = (in_stack_fffffffffffffed0 & 0xff0000) >> 8;\n      uVar49 = in_stack_fffffffffffffed0 >> 0x18 | uVar23;\n      in_stack_fffffffffffffee0 = (_List_node_base *)(ulong)uVar49;\n      if (bVar61 != false) {\n        object = (_List_node_base **)(ulong)uVar49;\n        uVar26 = uVar49 - 0x10000;\n        if ((uVar23 & 0x8000) == 0) {\n          uVar26 = uVar49;\n        }\n        local_c0 = (ulong)uVar26;\n      }\n      goto LAB_002c7171;\n    case 7:\n    case 8:\n    case 0x65:\n    case 0x88:\n    case 0x89:\n    case 0xac:\n      local_c0._0_4_ = local_c8;\n      pSVar34 = target->gp_;\n      if (pSVar34 != (Sized_symbol<32> *)0x0) goto LAB_002c7253;\n      VVar39 = 0;\nLAB_002c7297:\n      uVar49 = *(uint *)view;\n      uVar26 = (uVar49 & 0xff0000) >> 8;\n      uVar23 = uVar49 >> 0x18 | uVar26;\n      uVar49 = uVar23 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n      local_c8 = (uint)local_c0;\n      if (bVar61 != false) {\n        if (uVar21 == 0xac) {\n          local_c0._0_4_ = uVar49 * 4 & 0x1fc;\n        }\n        else {\n          local_c0._0_4_ = uVar23 - 0x10000;\n          if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }\n        }\n      }\n      goto LAB_002c72d4;\n    case 9:\n    case 0x66:\n    case 0x8a:\n      goto switchD_002c5379_caseD_9;\n    case 10:\n      goto LAB_002c6a55;\n    case 0xb:\n    case 0x67:\n    case 0x8e:\n      goto switchD_002c5379_caseD_b;\n    case 0xc:\n      goto switchD_002c5379_caseD_c;\n    case 0x12:\n      goto switchD_002c5379_caseD_12;\n    case 0x13:\n    case 0x91:\n    case 0xf9:\n      goto switchD_002c5379_caseD_13;\n    case 0x14:\n    case 0x92:\n      goto switchD_002c5379_caseD_14;\n    case 0x15:\n    case 0x93:\n      goto switchD_002c5379_caseD_15;\n    case 0x16:\n    case 0x1e:\n    case 0x94:\n    case 0x99:\n      goto switchD_002c5379_caseD_16;\n    case 0x17:\n    case 0x1f:\n    case 0x95:\n    case 0x9a:\n      goto switchD_002c5379_caseD_17;\n    case 0x18:\n    case 0x96:\n      local_c0._0_4_ = local_c8;\n      if (bVar61 != false) {\n        uVar10 = *(undefined8 *)view;\n        local_c0._0_4_ =\n             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }\n      goto LAB_002c6b1a;\n    case 0x1c:\n    case 0x97:\n      goto LAB_002c59bd;\n    case 0x1d:\n    case 0x98:\n      goto LAB_002c6b55;\n    case 0x25:\n    case 0x9c:\n      goto switchD_002c5379_caseD_25;\n    case 0x27:\n    case 0x29:\n      goto switchD_002c5379_caseD_27;\n    case 0x2a:\n    case 0x6a:\n    case 0xa2:\n      goto switchD_002c5379_caseD_2a;\n    case 0x2b:\n    case 0x6b:\n    case 0xa3:\n      goto switchD_002c5379_caseD_2b;\n    case 0x2c:\n    case 0x6c:\n    case 0xa4:\n      goto switchD_002c5379_caseD_2c;\n    case 0x2d:\n    case 0x6d:\n    case 0xa5:\n      goto switchD_002c5379_caseD_2d;\n    case 0x2e:\n    case 0x6e:\n    case 0xa6:\n      goto switchD_002c5379_caseD_2e;\n    case 0x2f:\n    case 0x30:\n      goto switchD_002c5379_caseD_2f;\n    case 0x31:\n    case 0x6f:\n    case 0xa9:\n      goto switchD_002c5379_caseD_31;\n    case 0x32:\n    case 0x70:\n    case 0xaa:\n      goto switchD_002c5379_caseD_32;\n    case 0x3c:\n      goto LAB_002c6f06;\n    case 0x3d:\n      goto LAB_002c6fd2;\n    case 0x3e:\n      goto LAB_002c6d53;\n    case 0x3f:\n      goto LAB_002c6e24;\n    case 0x40:\n      goto switchD_002c5379_caseD_40;\n    case 0x41:\n      goto LAB_002c6ccf;\n    case 0x8b:\n      goto LAB_002c6bb8;\n    case 0x8c:\n      goto LAB_002c6c3e;\n    case 0x8d:\n      goto LAB_002c69c5;\n    case 0xf8:\n      if (bVar61 != false) {\n        uVar21 = *(uint *)view;\n        local_c0._0_4_ =\n             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n        goto LAB_002c6ed9;\n      }\nLAB_002c8390:\n      local_c0._0_4_ = local_c8;\n      goto LAB_002c6ed9;\n    }\n  }\n  local_c8 = this->calculated_value_;\n  object = (_List_node_base **)(ulong)local_c8;\n  this->calculate_only_ = (bool)cVar47;\n  local_c0 = (ulong)local_c8;\n  local_c0._0_4_ = local_c8;\n  switch(uVar21) {\n  default:\n    bVar61 = false;\nswitchD_002c5379_caseD_0:\n    pcVar28 = (char *)gettext("unsupported reloc %u");\n    object = (_List_node_base **)relnum;\n    gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar21);\n    break;\n  case 1:\n    bVar61 = false;\n    local_c0._0_4_ = local_c8;\nLAB_002c70ec:\n    object = (_List_node_base **)this_00;\n    uVar23 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    if ((bool)cVar47) goto LAB_002c59a8;\n    *(ushort *)view = (ushort)uVar23 << 8 | (ushort)uVar23 >> 8;\n    SVar27 = (Status)(0xffff < uVar23 + 0x8000);\n    break;\n  case 2:\n    bVar61 = false;\nswitchD_002c5379_caseD_2:\n    object = (_List_node_base **)0x2;\n    bVar62 = should_apply_static_reloc\n                       ((Relocate *)gsym,(Mips_symbol<32> *)0x2,(uint)output_section,\n                        (Output_section *)target,pTVar54);\n    if (bVar62) {\n      bVar62 = this->calculate_only_;\n      uVar49 = local_c8;\n      if (bVar61 != false) {\n        uVar49 = *(uint *)view;\n        uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18\n        ;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n      if (bVar62 == false) {\n        SVar27 = STATUS_OKAY;\n        *(Value *)view =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }\n      else {\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = VVar20;\n      }\n    }\n    if ((gsym == (Sized_symbol<32> *)0x0) ||\n       (((bVar18 = (byte)(gsym->super_Symbol).field_0x39 >> 2, (bVar18 & 0x3c) != 0x3c &&\n         ((bVar18 & 0x30) != 0x20)) || (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 1))))\n    break;\n    pMVar53 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_;\n    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n      if (*(char *)&gsym[1].super_Symbol.name_ == '\0') {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2e46,"relocate");\n      }\n      symval.u_.value =\n           Mips16_stub_section<32,_true>::output_address\n                     ((Mips16_stub_section<32,_true> *)pMVar53,\n                      (Mips16_stub_section<32,_true> *)\n                      &(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_);\n      psymval = &symval;\n    }\n    local_e8 = gsym[1].super_Symbol.u2_.shndx;\n    pMVar51 = target->got_;\n    if (pMVar51 != (Mips_output_data_got<32,_true> *)0x0) goto LAB_002c6275;\n    goto LAB_002c638e;\n  case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/mips.cc",0x2e62,"relocate");\n  case 4:\n  case 100:\n  case 0x85:\n    bVar61 = false;\n    bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n    uVar49 = *(uint *)view;\n    uVar26 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    goto LAB_002c7644;\n  case 5:\n  case 0x68:\n  case 0x86:\n    goto switchD_002c4f87_caseD_5;\n  case 6:\n  case 0x69:\n  case 0x87:\n  case 0x9d:\n    bVar61 = false;\n    in_stack_fffffffffffffed0 = *(uint *)view;\n    in_stack_fffffffffffffee0 =\n         (_List_node_base *)\n         (ulong)(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8);\nLAB_002c7171:\n    if (rel_type == 9) {\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n      }\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);\n      }\n    }\n    if (local_f8._0_1_ == false) {\n      object = (_List_node_base **)this_00;\n      uVar23 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    }\n    else {\n      pSVar34 = target->gp_;\n      if (uVar21 == 0x69) {\n        if (pSVar34 == (Sized_symbol<32> *)0x0) {\n          VVar39 = 0;\n        }\n        else {\n          VVar39 = pSVar34->value_;\n          object = (_List_node_base **)target;\n          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        iVar25 = VVar39 - (address & 0xfffffffc);\n      }\n      else if ((uVar21 == 0x87) || (uVar21 == 0x9d)) {\n        if (pSVar34 == (Sized_symbol<32> *)0x0) {\n          VVar39 = 0;\n        }\n        else {\n          VVar39 = pSVar34->value_;\n          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        iVar25 = (VVar39 - address) + 3;\n      }\n      else {\n        if (pSVar34 == (Sized_symbol<32> *)0x0) {\n          VVar39 = 0;\n        }\n        else {\n          VVar39 = pSVar34->value_;\n          object = (_List_node_base **)target;\n          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        iVar25 = (VVar39 - address) + 4;\n      }\n      uVar23 = iVar25 + (uint)local_c0;\n    }\n    if ((bool)cVar47) goto LAB_002c59a8;\n    uVar23 = uVar23 ^ (uint)in_stack_fffffffffffffee0;\n    SVar27 = STATUS_OKAY;\n    *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ in_stack_fffffffffffffed0;\n    break;\n  case 7:\n  case 8:\n  case 0x65:\n  case 0x88:\n  case 0x89:\n  case 0xac:\n    pSVar34 = target->gp_;\n    if (pSVar34 != (Sized_symbol<32> *)0x0) {\n      bVar61 = false;\nLAB_002c7253:\n      local_c0._0_4_ = local_c8;\n      VVar39 = pSVar34->value_;\n      if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n          (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n         ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n        VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n      }\n      goto LAB_002c7297;\n    }\n    bVar61 = false;\n    VVar39 = 0;\n    uVar49 = *(uint *)view;\n    uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    local_c0._0_4_ = local_c8;\nLAB_002c72d4:\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - VVar39;\n    if (gsym == (Sized_symbol<32> *)0x0) {\n      uVar23 = uVar23 + this_00->gp_;\n      object = (_List_node_base **)this_00;\n    }\n    uVar26 = (uVar23 ^ uVar49) & 0xffff;\n    if (uVar21 == 0xac) {\n      uVar26 = (uVar23 ^ uVar49) & 0x7f;\n    }\n    uVar26 = uVar49 ^ uVar26;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    *(uint *)view =\n         uVar49 >> 0x18 | (uVar26 & 0xff0000) >> 8 | (uVar26 & 0xff00) << 8 | uVar26 << 0x18;\n    if (0xffff < uVar23 + 0x8000) {\n      pcVar28 = (char *)gettext(\n                               "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                               );\n      gold::gold_error(pcVar28);\n      goto LAB_002c7359;\n    }\nLAB_002c5c87:\n    SVar27 = STATUS_OKAY;\n    break;\n  case 9:\n  case 0x66:\n  case 0x8a:\n    goto switchD_002c4f87_caseD_9;\n  case 10:\n    bVar61 = false;\nLAB_002c6a55:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 4;\n      uVar26 = uVar23 & 0x3fffc;\n      local_c0._0_4_ = uVar26 - 0x40000;\n      if ((uVar23 & 0x20000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address >> 2;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    uVar49 = uVar49 ^ uVar23;\n    *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;\n    object = (_List_node_base **)this_00;\n    VVar24 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    SVar27 = STATUS_PCREL_UNALIGNED;\n    if ((VVar24 & 3) == 0) {\n      SVar27 = (Status)(0x3ffff < (VVar20 - address) + 0x20000);\n    }\n    break;\n  case 0xb:\n  case 0x67:\n  case 0x8e:\n    bVar61 = false;\nswitchD_002c5379_caseD_b:\n    if (gsym == (Sized_symbol<32> *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x2f3d,"relocate");\n    }\n    if (target->got_ == (Mips_output_data_got<32,_true> *)0x0) {\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n      goto LAB_002c82dc;\n    }\n    local_e8 = Mips_output_data_got<32,_true>::got_offset\n                         (target->got_,&gsym->super_Symbol,0,(Mips_relobj<32,_true> *)this_00);\n    pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\nLAB_002c6206:\n      object = (_List_node_base **)(ulong)local_e8;\n      uVar49 = Mips_output_data_got<32,_true>::gp_offset\n                         ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00);\n      if (this->calculate_only_ != false) goto LAB_002c67b0;\n      uVar23 = *(uint *)view;\n      uVar26 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;\n      *(uint *)view = ((uVar26 & 0xff00) << 8 | uVar26 << 0x18) ^ uVar23;\n      SVar27 = (Status)(0xffff < uVar49 + 0x8000);\n      goto LAB_002c624f;\n    }\n    goto LAB_002c81f0;\n  case 0xc:\n    bVar61 = false;\nswitchD_002c5379_caseD_c:\n    if (target->gp_ == (Sized_symbol<32> *)0x0) {\n      VVar39 = 0;\n    }\n    else {\n      VVar39 = target->gp_->value_;\n      if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n          (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n         ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n        VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n      }\n    }\n    uVar21 = *(uint *)view;\n    uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    if (bVar61 == false) {\n      uVar21 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21);\n    uVar23 = (VVar20 + this_00->gp_) - VVar39;\n    if (!bVar62 || !bVar63) {\nLAB_002c5ccb:\n      uVar23 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;\n      pRVar50 = (Relocate *)view;\nLAB_002c5c85:\n      pRVar50->calculated_value_ = uVar23;\n      goto LAB_002c5c87;\n    }\n    goto LAB_002c59a8;\n  case 0x12:\n    bVar61 = false;\nswitchD_002c5379_caseD_12:\n    object = (_List_node_base **)0x12;\n    bVar62 = should_apply_static_reloc\n                       ((Relocate *)gsym,(Mips_symbol<32> *)0x12,(uint)output_section,\n                        (Output_section *)target,pTVar54);\n    if (bVar62) {\n      cVar47 = this->calculate_only_;\n      VVar20 = local_c8;\n      if (bVar61 != false) {\n        uVar10 = *(undefined8 *)view;\n        VVar20 = (uint)(byte)((ulong)uVar10 >> 0x38) |\n                 ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n                 (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }\n      goto LAB_002c6b22;\n    }\n    break;\n  case 0x13:\n  case 0x91:\n  case 0xf9:\n    bVar61 = false;\nswitchD_002c5379_caseD_13:\n    pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n    if (gsym != (Sized_symbol<32> *)0x0) {\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)gsym;\n        local_e8 = Mips_output_data_got<32,_true>::got_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                              (Mips_relobj<32,_true> *)this_00);\n        goto LAB_002c6043;\n      }\n      goto LAB_002c827b;\n    }\n    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8364;\n    object = (_List_node_base **)(ulong)_Var14;\n    local_e8 = (*(((Sized_relobj<32,_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                 super_Relobj).super_Object._vptr_Object[0x2c])\n                         (this_00,object,0,(long)(int)local_c8);\nLAB_002c6043:\n    pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8276;\n    object = (_List_node_base **)(ulong)local_e8;\n    uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                       ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00);\n    if (uVar21 == 0xf9) {\n      pRVar50 = this;\n      if (this->calculate_only_ == false) goto LAB_002c5ccb;\n      goto LAB_002c5c85;\n    }\n    if (this->calculate_only_ == false) goto LAB_002c6098;\n    goto LAB_002c59a8;\n  case 0x14:\n  case 0x92:\n    bVar61 = false;\nswitchD_002c5379_caseD_14:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar23 = uVar49;\n    if (bVar61 == false) {\n      uVar23 = local_c8;\n    }\n    pMVar53 = (Mips_relobj<32,_false> *)psymval;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);\n    value = VVar20 + 0x8000 & 0xffff0000;\n    pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n    if (pMVar45 != (Mips_relobj<32,_true> *)0x0) {\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        uVar23 = Mips_got_info<32,_true>::get_got_page_offset\n                           ((Mips_got_info<32,_true> *)pMVar53,value,\n                            (Mips_output_data_got<32,_true> *)pMVar45);\n        pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n        if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n          object = (_List_node_base **)(ulong)uVar23;\n          uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,uVar23,\n                              (Mips_relobj<32,_true> *)this_00);\n          if ((bool)cVar47) goto LAB_002c59a8;\n          uVar49 = uVar49 ^ uVar23;\n          uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;\n          goto LAB_002c60ab;\n        }\n        goto LAB_002c8280;\n      }\n      goto LAB_002c8285;\n    }\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81a2:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false) {\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }\n    if ((bool)cVar47) {\n      SVar27 = STATUS_OKAY;\n      this->calculated_value_ = uVar26;\n    }\n    else {\n      uVar23 = uVar23 ^ uVar26;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n      SVar27 = (Status)(0xffff < uVar26 + 0x8000);\n      object = (_List_node_base **)view;\n    }\n    break;\n  case 0x16:\n  case 0x1e:\n  case 0x94:\n  case 0x99:\n    bVar61 = false;\nswitchD_002c5379_caseD_16:\n    pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n    if (gsym == (Sized_symbol<32> *)0x0) {\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);\n        goto LAB_002c5e6e;\n      }\n      goto LAB_002c81a2;\n    }\n    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8271;\n    object = (_List_node_base **)gsym;\n    local_e8 = Mips_output_data_got<32,_true>::got_offset\n                         ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                          (Mips_relobj<32,_true> *)this_00);\nLAB_002c5e6e:\n    pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c826c;\n    object = (_List_node_base **)(ulong)local_e8;\n    iVar25 = Mips_output_data_got<32,_true>::gp_offset\n                       ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00);\n    uVar49 = iVar25 + 0x8000U >> 0x10;\n    if (this->calculate_only_ == false) {\n      SVar27 = STATUS_OKAY;\n      uVar23 = *(uint *)view;\n      uVar49 = uVar49 ^ (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8);\n      *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n      goto LAB_002c624f;\n    }\nLAB_002c67b0:\n    this->calculated_value_ = uVar49;\n    SVar27 = STATUS_OKAY;\nLAB_002c624f:\n    if (local_e1 != false) {\n      pMVar51 = target->got_;\n      if (pMVar51 == (Mips_output_data_got<32,_true> *)0x0) {\nLAB_002c638e:\n        cVar47 = (char)pMVar51;\n        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nswitchD_002c4f87_caseD_5:\n        bVar61 = false;\nswitchD_002c5379_caseD_5:\n        if (rel_type == 4) {\n          sVar56 = (size_t)local_f8;\n          object = (_List_node_base **)this_00;\n          SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_);\n        }\n        else {\n          if (rel_type != 9) goto LAB_002c81f5;\n          p_Var31 = (_List_node_base *)operator_new(0x40);\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n          SVar27 = STATUS_OKAY;\n          p_Var31[1]._M_next = (_List_node_base *)view;\n          p_Var31[1]._M_prev = (_List_node_base *)this_00;\n          p_Var31[2]._M_next = (_List_node_base *)psymval;\n          *(uint *)&p_Var31[2]._M_prev = local_c8;\n          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;\n          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n          *(Mips_address *)&p_Var31[3]._M_prev = address;\n          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;\n          std::__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n          _DAT_0067db50 = _DAT_0067db50 + 1;\n        }\n      }\n      else {\n        if (gsym != (Sized_symbol<32> *)0x0) {\nLAB_002c6275:\n          if ((char)gsym[1].value_ != '\0') {\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }\n        }\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        *(Value *)(pMVar51->got_view_ + local_e8) =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }\n    }\n    break;\n  case 0x17:\n  case 0x1f:\n  case 0x95:\n  case 0x9a:\n    bVar61 = false;\nswitchD_002c5379_caseD_17:\n    pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n    if (gsym == (Sized_symbol<32> *)0x0) {\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);\n        goto LAB_002c5ddf;\n      }\nLAB_002c8369:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c836e:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8373;\n    }\n    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n      object = (_List_node_base **)gsym;\n      local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                            (Mips_relobj<32,_true> *)this_00);\nLAB_002c5ddf:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)local_e8;\n        uVar49 = Mips_output_data_got<32,_true>::gp_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                            (Mips_relobj<32,_true> *)this_00);\n        if (this->calculate_only_ != false) goto LAB_002c67b0;\n        SVar27 = STATUS_OKAY;\n        uVar23 = *(uint *)view;\n        uVar49 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;\n        *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n        goto LAB_002c624f;\n      }\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n    }\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c826c:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8271:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8276:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c827b:\n    target = (Target_mips<32,_true> *)object;\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8280:\n    value = (Mips_address)target;\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    pMVar45 = extraout_RDX_02;\nLAB_002c8285:\n    Mips_output_data_got<32,_true>::get_got_page_offset\n              ((Mips_output_data_got<32,_true> *)pMVar53,value,pMVar45);\nLAB_002c828a:\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n  case 0x18:\n  case 0x96:\n    bVar61 = false;\nLAB_002c6b1a:\n    VVar20 = -(uint)local_c0;\nLAB_002c6b22:\n    object = (_List_node_base **)this_00;\n    uVar23 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n    if (cVar47 != '\0') goto LAB_002c59a8;\n    uVar43 = (ulong)uVar23;\n    SVar27 = STATUS_OKAY;\n    *(ulong *)view =\n         (uVar43 & 0xff000000) << 8 | (uVar43 & 0xff0000) << 0x18 | (uVar43 & 0xff00) << 0x28 |\n         uVar43 << 0x38;\n    break;\n  case 0x1c:\n  case 0x97:\n    bVar61 = false;\nLAB_002c59bd:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = (uint)((ulong)VVar20 + 0x80008000 >> 0x20);\n    goto joined_r0x002c59a3;\n  case 0x1d:\n  case 0x98:\n    bVar61 = false;\nLAB_002c6b55:\n    uVar23 = *(uint *)view;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar49 = (uVar23 & 0xff0000) >> 8;\n      uVar21 = uVar23 >> 0x18 | uVar49;\n      local_c0._0_4_ = uVar21 - 0x10000;\n      if ((uVar49 & 0x8000) == 0) {\n        local_c0._0_4_ = uVar21;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    gold::Symbol_value<32>::value<true>\n              (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    if (!bVar62 || !bVar63) {\n      uVar23 = uVar23 & 0xffff;\n      pRVar50 = (Relocate *)view;\n      goto LAB_002c5c85;\n    }\n    SVar27 = STATUS_OKAY;\n    this->calculated_value_ = 0;\n    break;\n  case 0x25:\n  case 0x9c:\n    bVar61 = false;\nswitchD_002c5379_caseD_25:\n    if (gsym != (Sized_symbol<32> *)0x0) {\n      bVar62 = (gsym->super_Symbol).dynsym_index_ != 0;\n      object = (_List_node_base **)(ulong)bVar62;\n      bVar62 = symbol_refs_local(&gsym->super_Symbol,bVar62,true);\n      if (!bVar62) break;\n      cVar47 = this->calculate_only_;\n    }\n    VVar20 = 0;\n    if (bVar61 == false) {\n      VVar20 = local_c8;\n    }\n    uVar49 = *(uint *)view;\n    uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    uVar49 = uVar23;\n    if (((uVar21 == 0x25) && (local_e3 != 1)) && ((uVar23 == 0x3200008 || (uVar23 == 0x320f809)))) {\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      if ((VVar20 - address) + 0x1fffc < 0x40000) {\n        uVar21 = (VVar20 - address) - 4 >> 2 & 0xffff;\n        uVar49 = uVar21 | 0x10000000;\n        if (uVar23 != 0x3200008) {\n          uVar49 = uVar21 | 0x4110000;\n        }\n      }\n    }\n    if (cVar47 == '\0') {\n      SVar27 = STATUS_OKAY;\n      *(uint *)view =\n           uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    }\n    else {\n      this->calculated_value_ = uVar49;\n      SVar27 = STATUS_OKAY;\n    }\n    break;\n  case 0x27:\n  case 0x29:\n    bVar61 = false;\nswitchD_002c5379_caseD_27:\n    uVar21 = *(uint *)view;\n    uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    if (bVar61 == false) {\n      uVar21 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21);\n    uVar23 = VVar20 - 0x8000;\n    if (!bVar62 || !bVar63) goto LAB_002c5ccb;\n    goto LAB_002c59a8;\n  case 0x2a:\n  case 0x6a:\n  case 0xa2:\n    bVar61 = false;\nswitchD_002c5379_caseD_2a:\n    pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n    if (gsym == (Sized_symbol<32> *)0x0) {\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,2,(long)(int)local_c8);\n        goto LAB_002c5c48;\n      }\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\nLAB_002c8333:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8338;\n    }\n    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n      local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,2,\n                            (Mips_relobj<32,_true> *)this_00);\nLAB_002c5c48:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) goto LAB_002c5c62;\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n    }\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c83ab;\n  case 0x2b:\n  case 0x6b:\n  case 0xa3:\n    bVar61 = false;\nswitchD_002c5379_caseD_2b:\n    pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\nLAB_002c8364:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8369;\n    }\n    if ((((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n        local_got_offsets_)._M_h._M_rehash_policy._M_next_resize == 0) {\n      pMVar30 = *(Mips_got_info<32,_true> **)\n                 &(((Sized_relobj<32,_true> *)\n                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  local_got_offsets_)._M_h._M_rehash_policy;\n    }\n    else {\n      pMVar30 = (Mips_got_info<32,_true> *)this_00->got_info_;\n    }\n    if (pMVar30 == (Mips_got_info<32,_true> *)0x0) goto LAB_002c828a;\n    local_e8 = pMVar30->tls_ldm_offset_;\n    object = (_List_node_base **)(ulong)local_e8;\n    uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                       ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00);\nLAB_002c5c74:\n    pRVar50 = this;\n    if (this->calculate_only_ != false) goto LAB_002c5c85;\nLAB_002c6098:\n    uVar21 = *(uint *)view;\n    uVar49 = (uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8) ^ uVar23;\n    uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;\nLAB_002c60ab:\n    *(uint *)view = uVar21;\n    SVar27 = (Status)(0xffff < uVar23 + 0x8000);\n    break;\n  case 0x2c:\n  case 0x6c:\n  case 0xa4:\n    bVar61 = false;\nswitchD_002c5379_caseD_2c:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar23 = uVar49;\n    if (bVar61 == false) {\n      uVar23 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    uVar23 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);\n    goto LAB_002c5a76;\n  case 0x2d:\n  case 0x6d:\n  case 0xa5:\nswitchD_002c4f87_caseD_2d:\n    bVar61 = false;\nswitchD_002c5379_caseD_2d:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar23 = uVar49;\n    if (bVar61 == false) {\n      uVar23 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);\n    uVar23 = VVar20 - 0x8000;\n    goto joined_r0x002c59a3;\n  case 0x2e:\n  case 0x6e:\n  case 0xa6:\n    bVar61 = false;\nswitchD_002c5379_caseD_2e:\n    pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n    if (gsym == (Sized_symbol<32> *)0x0) {\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,1,(long)(int)local_c8);\n        goto LAB_002c5b06;\n      }\n      goto LAB_002c836e;\n    }\n    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n      local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,1,\n                            (Mips_relobj<32,_true> *)this_00);\nLAB_002c5b06:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n        goto switchD_002c4f87_caseD_2d;\n      }\nLAB_002c5c62:\n      object = (_List_node_base **)(ulong)local_e8;\n      uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                         ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00);\n      goto LAB_002c5c74;\n    }\nLAB_002c8338:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c833d;\n  case 0x2f:\n  case 0x30:\n    bVar61 = false;\nswitchD_002c5379_caseD_2f:\n    uVar21 = *(uint *)view;\n    uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    if (bVar61 == false) {\n      uVar21 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21);\n    uVar23 = VVar20 - 0x7000;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    SVar27 = STATUS_OKAY;\n    *(uint *)view =\n         uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | VVar20 << 0x18;\n    break;\n  case 0x31:\n  case 0x6f:\n  case 0xa9:\n    bVar61 = false;\nswitchD_002c5379_caseD_31:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar23 = uVar49;\n    if (bVar61 == false) {\n      uVar23 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);\n    uVar23 = VVar20 + 0x1000;\nLAB_002c5a76:\n    uVar23 = uVar23 >> 0x10;\n    goto joined_r0x002c59a3;\n  case 0x32:\n  case 0x70:\n  case 0xaa:\n    bVar61 = false;\nswitchD_002c5379_caseD_32:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar23 = uVar49;\n    if (bVar61 == false) {\n      uVar23 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);\n    uVar23 = VVar20 - 0x7000;\njoined_r0x002c59a3:\n    if (bVar62 && bVar63) goto LAB_002c59a8;\n    *(uint *)view = uVar21 ^ (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18);\n    SVar27 = STATUS_OKAY;\n    break;\n  case 0x3c:\n    bVar61 = false;\nLAB_002c6f06:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 4;\n      uVar26 = uVar23 & 0x7ffffc;\n      local_c0._0_4_ = uVar26 - 0x800000;\n      if ((uVar23 & 0x400000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address >> 2;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    uVar49 = uVar49 ^ uVar23;\n    *(uint *)view = uVar21 ^ ((uVar49 & 0x1f0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n    object = (_List_node_base **)this_00;\n    VVar24 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    SVar27 = STATUS_PCREL_UNALIGNED;\n    if ((VVar24 & 3) == 0) {\n      SVar27 = (Status)(0x7fffff < (VVar20 - address) + 0x400000);\n    }\n    break;\n  case 0x3d:\n    bVar61 = false;\nLAB_002c6fd2:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 4;\n      uVar26 = uVar23 & 0xffffffc;\n      local_c0._0_4_ = uVar26 + 0xf0000000;\n      if ((uVar23 & 0x8000000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address >> 2;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    uVar49 = uVar49 ^ uVar23;\n    *(uint *)view =\n         uVar21 ^ ((uVar49 & 0x3ffffff) >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8\n                  | (uVar49 & 0x3ffffff) << 0x18);\n    object = (_List_node_base **)this_00;\n    VVar24 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    SVar27 = STATUS_PCREL_UNALIGNED;\n    if ((VVar24 & 3) == 0) {\n      SVar27 = (Status)(0xfffffff < (VVar20 - address) + 0x8000000);\n    }\n    break;\n  case 0x3e:\n    bVar61 = false;\nLAB_002c6d53:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 8;\n      uVar26 = uVar23 & 0x1ffff8;\n      local_c0._0_4_ = uVar26 - 0x200000;\n      if ((uVar23 & 0x100000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - (address & 0xfffffff8);\n    uVar23 = uVar26 >> 3;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    uVar49 = uVar49 ^ uVar23;\n    *(uint *)view = uVar21 ^ ((uVar49 & 0x30000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar21 = VVar20 & 7;\njoined_r0x002c6ec7:\n    SVar27 = STATUS_PCREL_UNALIGNED;\n    if (uVar21 == 0) {\n      SVar27 = (Status)(0x1fffff < uVar26 + 0x100000);\n    }\n    break;\n  case 0x3f:\n    bVar61 = false;\nLAB_002c6e24:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 4;\n      uVar26 = uVar23 & 0x1ffffc;\n      local_c0._0_4_ = uVar26 - 0x200000;\n      if ((uVar23 & 0x100000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {\n          in_stack_fffffffffffffee0 = local_98[1]._M_next;\n          VVar20 = *(Value *)&local_98[2]._M_prev;\n          uVar23 = *(uint *)&in_stack_fffffffffffffee0->_M_next;\n          in_stack_fffffffffffffed8 = (_List_node_base *)(ulong)uVar23;\n          uVar26 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8;\n          if (*(char *)((long)&local_98[3]._M_next + 4) != '\0') {\n            VVar20 = (uint)local_c0 + uVar26 * 0x10000;\n          }\n          iVar25 = *(int *)&local_98[3]._M_prev;\n          VVar20 = gold::Symbol_value<32>::value<true>\n                             ((Symbol_value<32> *)local_98[2]._M_next,\n                              (Sized_relobj_file<32,_true> *)local_98[1]._M_prev,VVar20);\n          uVar41 = (0x8000 - iVar25) + VVar20 >> 0x10;\n          if (bVar62 && bVar63) {\n            this->calculated_value_ = uVar41;\n          }\n          else {\n            uVar41 = uVar41 ^ uVar26;\n            *(uint *)&in_stack_fffffffffffffee0->_M_next =\n                 ((uVar41 & 0xff00) << 8 | uVar41 << 0x18) ^ uVar23;\n          }\n          in_stack_fffffffffffffee8 = local_98->_M_next;\n          _DAT_0067db10 = _DAT_0067db10 + -1;\n          std::__detail::_List_node_base::_M_unhook(local_98);\n          operator_delete(local_98);\n          local_98 = in_stack_fffffffffffffee8;\n        }\n        else {\n          local_98 = local_98->_M_next;\n        }\n      } while (local_98 !=\n               (_List_node_base *)\n               &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    SVar27 = STATUS_OKAY;\n    *(uint *)view = (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18) ^ uVar21;\n    break;\n  case 0x8b:\n    bVar61 = false;\nLAB_002c6bb8:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 2;\n      uVar26 = uVar23 & 0xff;\n      local_c0._0_4_ = uVar26 - 0x100;\n      if ((uVar23 & 0x80) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address >> 1;\n    if ((bool)cVar47) {\nLAB_002c78e8:\n      SVar27 = STATUS_OKAY;\n      this->calculated_value_ = uVar23;\n    }\n    else {\n      *(uint *)view = uVar21 ^ ((uVar23 ^ uVar49) & 0x7f) << 0x18;\n      SVar27 = (Status)(0xff < (VVar20 - address) + 0x80);\n    }\n    break;\n  case 0x8c:\n    bVar61 = false;\nLAB_002c6c3e:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 2;\n      uVar26 = uVar23 & 0x7fe;\n      local_c0._0_4_ = uVar26 - 0x800;\n      if ((uVar23 & 0x400) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address >> 1;\n    if ((bool)cVar47) goto LAB_002c78e8;\n    uVar23 = uVar23 ^ uVar49;\n    *(uint *)view = uVar21 ^ ((uVar23 & 0x300) << 8 | uVar23 << 0x18);\n    SVar27 = (Status)(0x7ff < (VVar20 - address) + 0x400);\n    break;\n  case 0x8d:\n    bVar61 = false;\nLAB_002c69c5:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 2;\n      uVar26 = uVar23 & 0x1fffe;\n      local_c0._0_4_ = uVar26 - 0x20000;\n      if ((uVar23 & 0x10000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address >> 1;\n    if ((bool)cVar47) goto LAB_002c78e8;\n    uVar23 = uVar23 ^ uVar49;\n    *(uint *)view = uVar21 ^ ((uVar23 & 0xff00) << 8 | uVar23 << 0x18);\n    SVar27 = (Status)(0x1ffff < (VVar20 - address) + 0x10000);\n    break;\n  case 0xf8:\n    bVar61 = false;\nLAB_002c6ed9:\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address;\n    if (!bVar62 || !bVar63) goto LAB_002c5ccb;\nLAB_002c59a8:\n    SVar27 = STATUS_OKAY;\n    this->calculated_value_ = uVar23;\n  }\nLAB_002c5940:\n  iVar25 = (int)object;\n  puVar58 = puVar58 + 1;\n  if (&symval == (Symbol_value<32> *)puVar58) {\nLAB_002c5380:\n    uVar21 = uVar60 - 0x85;\n    if (local_f4 < 0xd) {\n      uVar49 = *(uint *)view;\n      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8;\n      uVar26 = (uVar49 & 0xff00) << 8;\n      uVar41 = uVar49 << 0x18;\n      uVar22 = uVar23 | uVar26 | uVar41;\n      uVar43 = (ulong)uVar22;\n      uVar19 = (ushort)(uVar22 >> 0x10);\n      if (uVar21 < 0x29) {\n        if ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n          uVar19 = uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13);\n          uVar43 = (ulong)((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f);\n        }\n      }\n      else if (((uVar60 == 0x85 || uVar60 == 100) || uVar60 == 4) || (uVar60 != 100)) {\n        if (uVar60 != 100) goto LAB_002c5754;\n        uVar19 = uVar19 >> 5 & 0x1f |\n                 (ushort)(uVar22 >> 0xb) & 0x3e0 | (ushort)(uVar41 >> 0x10) & 0xfc00;\n      }\nLAB_002c5471:\n      uVar38 = (ushort)uVar43 << 8 | (ushort)uVar43 >> 8;\n      iVar25 = (int)CONCAT62((int6)(uVar43 >> 0x10),uVar38);\n      *(ushort *)(view + 2) = uVar38;\n      *(ushort *)view = uVar19 << 8 | uVar19 >> 8;\n    }\n    else if (((uVar21 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) != 0)) &&\n            (1 < uVar60 - 0x8b)) {\n      uVar21 = *(uint *)view;\n      uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n      uVar43 = (ulong)uVar21;\n      uVar19 = (ushort)(uVar21 >> 0x10);\n      goto LAB_002c5471;\n    }\n    if (SVar27 == STATUS_OVERFLOW) {\n      if (gsym == (Sized_symbol<32> *)0x0) {\n        pcVar13 = (((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj).super_Object.name_._M_dataplus._M_p;\n        iVar25 = 0x2c7937;\n        pcVar28 = (char *)gettext("relocation overflow: %u against local symbol %u in %s");\n        gold::gold_error_at_location<32,_true>\n                  (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13);\n      }\n      else {\n        bVar18 = (gsym->super_Symbol).field_0x3a;\n        if ((bVar18 & 7) == 0) {\n          uVar21 = (gsym->super_Symbol).u2_.shndx;\n          if (((gsym->super_Symbol).field_0x3b & 0x20) == 0) {\n            bVar61 = gold::Symbol::is_common_shndx(uVar21);\n            bVar61 = !bVar61;\n          }\n          else {\n            bVar61 = uVar21 != 0;\n          }\n        }\n        else {\n          bVar61 = (bVar18 & 7) != 4;\n        }\n        if ((bVar61) && (((gsym->super_Symbol).field_0x3a & 7) == 0)) {\n          uVar9 = ((gsym->super_Symbol).u1_.output_data)->address_;\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        else {\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        operator_delete(local_58._M_dataplus._M_p);\n      }\n    }\n    else if (SVar27 != STATUS_OKAY) {\n      if (SVar27 == STATUS_BAD_RELOC) {\n        pcVar28 = "unexpected opcode while processing relocation";\n      }\n      else {\n        if (SVar27 != STATUS_PCREL_UNALIGNED) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");\n        }\n        pcVar28 = "unaligned PC-relative relocation";\n      }\n      pcVar28 = (char *)gettext(pcVar28);\n      gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);\n      iVar25 = (int)relnum;\n    }\nLAB_002c53ec:\n    gold::Symbol_value<32>::~Symbol_value(&symval,iVar25);\n    return true;\n  }\n  uVar21 = *puVar58;\n  goto LAB_002c4f1d;\nLAB_002c82c4:\n  Mips_output_data_got<32,_true>::get_got_page_offset\n            ((Mips_output_data_got<32,_true> *)pMVar53,(Mips_address)object,pMVar45);\nLAB_002c82c9:\n  if ((char)puVar58 != '\0') goto LAB_002c4d83;\nLAB_002c5869:\n  pMVar42 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\nLAB_002c5870:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  symval.u_.value =\n       Mips16_stub_section<32,_true>::output_address\n                 ((Mips16_stub_section<32,_true> *)pMVar42,\n                  (Mips16_stub_section<32,_true> *)\n                  &(((Sized_relobj<32,_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                   super_Relobj).super_Object.name_);\n  psymval = (Symbol_value<32> *)local_d0;\n  bVar61 = true;\n  local_e1 = true;\n  object = (_List_node_base **)local_d0;\n  goto LAB_002c4e20;\nLAB_002c4d83:\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 != -1) goto LAB_002c5256;\n  bVar61 = true;\n  goto LAB_002c4d98;\nswitchD_002c4f87_caseD_9:\n  bVar61 = false;\nswitchD_002c5379_caseD_9:\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    if (rel_type == 4) {\n      sVar56 = 0;\n      object = (_List_node_base **)this_00;\n      pMVar53 = (Mips_relobj<32,_false> *)view;\n      SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                         (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,bVar61,0,target,\n                          (bool)cVar47,&this->calculated_value_);\n    }\n    else {\n      if (rel_type != 9) {\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      pMVar53 = (Mips_relobj<32,_false> *)operator_new(0x40);\n      (((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.field_0x3c = 0;\n      SVar27 = STATUS_OKAY;\n      (((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.shnum_ = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n      (((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.name_._M_string_length = (size_type)view;\n      *(Mips_relobj<32,_false> **)\n       &(((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj\n        ).super_Object.name_.field_2 = this_00;\n      *(Symbol_value<32> **)\n       ((long)&(((Sized_relobj<32,_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8) = psymval;\n      *(uint *)&(((Sized_relobj<32,_true> *)\n                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                super_Relobj).super_Object.input_file_ = local_c8;\n      *(uint *)((long)&(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.input_file_ + 4) = uVar21;\n      *(_Rb_tree_color *)\n       &(((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj\n        ).super_Object.offset_ = _Var14;\n      *(bool *)((long)&(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.offset_ + 4) = bVar61;\n      std::__detail::_List_node_base::_M_hook\n                ((_List_node_base *)pMVar53,\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }\n  pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n  if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8333;\n  pSVar34 = gsym;\n  local_e8 = Mips_output_data_got<32,_true>::got_offset\n                       ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                        (Mips_relobj<32,_true> *)this_00);\n  local_98._0_1_ = (byte)pSVar34;\n  pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n  if (pMVar53 != (Mips_relobj<32,_false> *)0x0) goto LAB_002c6206;\n  pMVar32 = (Mips_relobj<32,_false> *)\n            Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n  pMVar42 = extraout_RDX;\nLAB_002c6490:\n  uVar21 = (uint)(byte)local_98;\n  if ((pMVar42 != pMVar32) &&\n     (*(_Rb_tree_color *)\n       ((long)&(((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8) <= _Var14)) {\n    pMVar53 = (Mips_relobj<32,_false> *)\n              (((Sized_relobj<32,_true> *)\n               &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n              super_Relobj).super_Object.input_file_;\n  }\nLAB_002c64ab:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  object = (_List_node_base **)\n           &(((Sized_relobj<32,_true> *)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n            super_Relobj).super_Object.name_;\n  symval.u_.value =\n       Mips16_stub_section<32,_true>::output_address\n                 ((Mips16_stub_section<32,_true> *)pMVar53,(Mips16_stub_section<32,_true> *)object);\n  bVar62 = uVar60 == 100;\n  puVar58 = (uint *)0x0;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c7a61;\n  local_e1 = true;\n  bVar61 = bVar62;\nLAB_002c64da:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  puVar58 = (uint *)0x0;\n  psymval = (Symbol_value<32> *)local_d0;\n  goto LAB_002c4e43;\nLAB_002c7a61:\n  psymval = (Symbol_value<32> *)local_d0;\n  local_e1 = true;\n  goto LAB_002c4e56;\n}\n\n" comment comment comment comment comment (declaration "bool __thiscall\nanon_unknown.dwarf_ead2ad::Target_mips<32,_true>::Relocate::relocate\n          (Relocate *this,Relocate_info<32,_true> *relinfo,uint rel_type,\n          Target_mips<32,_true> *target,Output_section *output_section,size_t relnum,uchar *preloc,\n          Sized_symbol<32> *gsym,Symbol_value<32> *psymval,uchar *view,Mips_address address,\n          section_size_type param_11)\n\n{\n  uint64_t *puVar1;" primitive_type (ms_call_modifier "__thiscall" __thiscall) identifier (ERROR ".dwarf_ead2ad::Target_mips<32" . identifier : : identifier < number_literal) , (ERROR "_true>::Relocate::relocate\n          (Relocate *this,Relocate_info<32,_true> *relinfo,uint rel_type,\n          Target_mips<32,_true> *target,Output_section *output_section,size_t relnum,uchar *preloc,\n          Sized_symbol<32> *gsym,Symbol_value<32> *psymval,uchar *view,Mips_address address,\n          section_size_type param_11)\n\n{\n  uint64_t" identifier > : : identifier : : (function_declarator "relocate\n          (Relocate *this,Relocate_info<32,_true> *relinfo,uint rel_type,\n          Target_mips<32,_true> *target,Output_section *output_section,size_t relnum,uchar *preloc,\n          Sized_symbol<32> *gsym,Symbol_value<32> *psymval,uchar *view,Mips_address address,\n          section_size_type param_11)" identifier (parameter_list "(Relocate *this,Relocate_info<32,_true> *relinfo,uint rel_type,\n          Target_mips<32,_true> *target,Output_section *output_section,size_t relnum,uchar *preloc,\n          Sized_symbol<32> *gsym,Symbol_value<32> *psymval,uchar *view,Mips_address address,\n          section_size_type param_11)" ( (parameter_declaration "Relocate *this" type_identifier (pointer_declarator "*this" * identifier)) , (parameter_declaration "Relocate_info" type_identifier) (ERROR "<32" < number_literal) , (parameter_declaration "_true> *relinfo" type_identifier (ERROR ">" >) (pointer_declarator "*relinfo" * identifier)) , (parameter_declaration "uint rel_type" type_identifier identifier) , (parameter_declaration "Target_mips" type_identifier) (ERROR "<32" < number_literal) , (parameter_declaration "_true> *target" type_identifier (ERROR ">" >) (pointer_declarator "*target" * identifier)) , (parameter_declaration "Output_section *output_section" type_identifier (pointer_declarator "*output_section" * identifier)) , (parameter_declaration "size_t relnum" primitive_type identifier) , (parameter_declaration "uchar *preloc" type_identifier (pointer_declarator "*preloc" * identifier)) , (parameter_declaration "Sized_symbol<32> *gsym" type_identifier (ERROR "<32>" < number_literal >) (pointer_declarator "*gsym" * identifier)) , (parameter_declaration "Symbol_value<32> *psymval" type_identifier (ERROR "<32>" < number_literal >) (pointer_declarator "*psymval" * identifier)) , (parameter_declaration "uchar *view" type_identifier (pointer_declarator "*view" * identifier)) , (parameter_declaration "Mips_address address" type_identifier identifier) , (parameter_declaration "section_size_type param_11" type_identifier identifier) ))) { primitive_type) (pointer_declarator "*puVar1" * identifier) ;) (declaration "_Base_ptr *pp_Var2;" type_identifier (pointer_declarator "*pp_Var2" * identifier) ;) (declaration "_Rb_tree_header *p_Var3;" type_identifier (pointer_declarator "*p_Var3" * identifier) ;) (declaration "byte bVar4;" type_identifier identifier ;) (declaration "Mips_address address_00;" type_identifier identifier ;) (declaration "Mips_address MVar5;" type_identifier identifier ;) (expression_statement "Mips_relobj<32,_false> *this_00;" (update_expression "Mips_relobj<32,_false> *this_00" (binary_expression "Mips_relobj<32,_false> *this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*this_00" * identifier)) --) ;) (expression_statement "Mips_output_data_mips_stubs<32,_true> *pMVar6;" (update_expression "Mips_output_data_mips_stubs<32,_true> *pMVar6" (binary_expression "Mips_output_data_mips_stubs<32,_true> *pMVar6" (binary_expression "Mips_output_data_mips_stubs<32" identifier < number_literal) (ERROR ",_true" , identifier) > (pointer_expression "*pMVar6" * identifier)) --) ;) (expression_statement "Mips_output_data_plt<32,_true> *pMVar7;" (update_expression "Mips_output_data_plt<32,_true> *pMVar7" (binary_expression "Mips_output_data_plt<32,_true> *pMVar7" (binary_expression "Mips_output_data_plt<32" identifier < number_literal) (ERROR ",_true" , identifier) > (pointer_expression "*pMVar7" * identifier)) --) ;) (expression_statement "Mips_output_data_la25_stub<32,_true> *pMVar8;" (update_expression "Mips_output_data_la25_stub<32,_true> *pMVar8" (binary_expression "Mips_output_data_la25_stub<32,_true> *pMVar8" (binary_expression "Mips_output_data_la25_stub<32" identifier < number_literal) (ERROR ",_true" , identifier) > (pointer_expression "*pMVar8" * identifier)) --) ;) (declaration "uint64_t uVar9;" primitive_type identifier ;) (declaration "undefined8 uVar10;" type_identifier identifier ;) (declaration "ulong uVar11;" type_identifier identifier ;) (declaration "_Bit_type *p_Var12;" type_identifier (pointer_declarator "*p_Var12" * identifier) ;) (declaration "pointer pcVar13;" type_identifier identifier ;) (declaration "_Rb_tree_color _Var14;" type_identifier identifier ;) (declaration "_Alloc_hider _Var15;" type_identifier identifier ;) (declaration "bool bVar16;" primitive_type identifier ;) (declaration "byte bVar17;" type_identifier identifier ;) (declaration "byte bVar18;" type_identifier identifier ;) (declaration "ushort uVar19;" type_identifier identifier ;) (declaration "Valtype x;" type_identifier identifier ;) (declaration "Value VVar20;" type_identifier identifier ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "uint uVar23;" type_identifier identifier ;) (declaration "Value VVar24;" type_identifier identifier ;) (declaration "int iVar25;" primitive_type identifier ;) (declaration "uint uVar26;" type_identifier identifier ;) (declaration "Status SVar27;" type_identifier identifier ;) (declaration "char *pcVar28;" primitive_type (pointer_declarator "*pcVar28" * identifier) ;) (declaration "ulong uVar29;" type_identifier identifier ;) (expression_statement "Mips_got_info<32,_true> *pMVar30;" (update_expression "Mips_got_info<32,_true> *pMVar30" (binary_expression "Mips_got_info<32,_true> *pMVar30" (binary_expression "Mips_got_info<32" identifier < number_literal) (ERROR ",_true" , identifier) > (pointer_expression "*pMVar30" * identifier)) --) ;) (declaration "_List_node_base *p_Var31;" type_identifier (pointer_declarator "*p_Var31" * identifier) ;) (expression_statement "Mips_relobj<32,_false> *pMVar32;" (update_expression "Mips_relobj<32,_false> *pMVar32" (binary_expression "Mips_relobj<32,_false> *pMVar32" (binary_expression "Mips_relobj<32" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*pMVar32" * identifier)) --) ;) (declaration "_Base_ptr p_Var33;" type_identifier identifier ;) (expression_statement "Sized_symbol<32> *pSVar34;" (update_expression "Sized_symbol<32> *pSVar34" (binary_expression "Sized_symbol<32> *pSVar34" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*pSVar34" * identifier)) --) ;) (expression_statement "Mips_relobj<32,_false> *pMVar35;" (update_expression "Mips_relobj<32,_false> *pMVar35" (binary_expression "Mips_relobj<32,_false> *pMVar35" (binary_expression "Mips_relobj<32" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*pMVar35" * identifier)) --) ;) (declaration "_Base_ptr p_Var36;" type_identifier identifier ;) (declaration "_Base_ptr p_Var37;" type_identifier identifier ;) (declaration "ushort uVar38;" type_identifier identifier ;) (declaration "Value_type VVar39;" type_identifier identifier ;) (declaration "long lVar40;" (sized_type_specifier "long" long) identifier ;) (declaration "bool jal_shuffle;" primitive_type identifier ;) (declaration "int extraout_EDX;" primitive_type identifier ;) (declaration "uint uVar41;" type_identifier identifier ;) (expression_statement "Mips_relobj<32,_false> *extraout_RDX;" (update_expression "Mips_relobj<32,_false> *extraout_RDX" (binary_expression "Mips_relobj<32,_false> *extraout_RDX" (binary_expression "Mips_relobj<32" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*extraout_RDX" * identifier)) --) ;) (expression_statement "Mips_relobj<32,_false> *pMVar42;" (update_expression "Mips_relobj<32,_false> *pMVar42" (binary_expression "Mips_relobj<32,_false> *pMVar42" (binary_expression "Mips_relobj<32" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*pMVar42" * identifier)) --) ;) (declaration "ulong uVar43;" type_identifier identifier ;) (expression_statement "Symbol_value<32> *extraout_RDX_00;" (update_expression "Symbol_value<32> *extraout_RDX_00" (binary_expression "Symbol_value<32> *extraout_RDX_00" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*extraout_RDX_00" * identifier)) --) ;) (expression_statement "Symbol_value<32> *extraout_RDX_01;" (update_expression "Symbol_value<32> *extraout_RDX_01" (binary_expression "Symbol_value<32> *extraout_RDX_01" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*extraout_RDX_01" * identifier)) --) ;) (declaration "undefined7 uVar46;" type_identifier identifier ;) (expression_statement "Symbol_value<32> *pSVar44;" (update_expression "Symbol_value<32> *pSVar44" (binary_expression "Symbol_value<32> *pSVar44" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*pSVar44" * identifier)) --) ;) (expression_statement "Mips_relobj<32,_true> *extraout_RDX_02;" (update_expression "Mips_relobj<32,_true> *extraout_RDX_02" (binary_expression "Mips_relobj<32,_true> *extraout_RDX_02" (binary_expression "Mips_relobj<32" identifier < number_literal) (ERROR ",_true" , identifier) > (pointer_expression "*extraout_RDX_02" * identifier)) --) ;) (expression_statement "Mips_relobj<32,_true> *extraout_RDX_03;" (update_expression "Mips_relobj<32,_true> *extraout_RDX_03" (binary_expression "Mips_relobj<32,_true> *extraout_RDX_03" (binary_expression "Mips_relobj<32" identifier < number_literal) (ERROR ",_true" , identifier) > (pointer_expression "*extraout_RDX_03" * identifier)) --) ;) (expression_statement "Mips_relobj<32,_true> *pMVar45;" (update_expression "Mips_relobj<32,_true> *pMVar45" (binary_expression "Mips_relobj<32,_true> *pMVar45" (binary_expression "Mips_relobj<32" identifier < number_literal) (ERROR ",_true" , identifier) > (pointer_expression "*pMVar45" * identifier)) --) ;) (declaration "char cVar47;" primitive_type identifier ;) (declaration "uint uVar48;" type_identifier identifier ;) (declaration "uint uVar49;" type_identifier identifier ;) (declaration "Relocate *pRVar50;" type_identifier (pointer_declarator "*pRVar50" * identifier) ;) (expression_statement "Mips_output_data_got<32,_true> *pMVar51;" (update_expression "Mips_output_data_got<32,_true> *pMVar51" (binary_expression "Mips_output_data_got<32,_true> *pMVar51" (binary_expression "Mips_output_data_got<32" identifier < number_literal) (ERROR ",_true" , identifier) > (pointer_expression "*pMVar51" * identifier)) --) ;) (declaration "Mips_address value;" type_identifier identifier ;) (expression_statement "Mips_symbol<64> *sym;" (update_expression "Mips_symbol<64> *sym" (binary_expression "Mips_symbol<64> *sym" (binary_expression "Mips_symbol<64" identifier < number_literal) > (pointer_expression "*sym" * identifier)) --) ;) (declaration "_List_node_base **object;" type_identifier (pointer_declarator "**object" * (pointer_declarator "*object" * identifier)) ;) (declaration "byte *pbVar52;" type_identifier (pointer_declarator "*pbVar52" * identifier) ;) (expression_statement "Mips_relobj<32,_false> *pMVar53;" (update_expression "Mips_relobj<32,_false> *pMVar53" (binary_expression "Mips_relobj<32,_false> *pMVar53" (binary_expression "Mips_relobj<32" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*pMVar53" * identifier)) --) ;) (expression_statement "Target_mips<32,_true> *pTVar54;" (update_expression "Target_mips<32,_true> *pTVar54" (binary_expression "Target_mips<32,_true> *pTVar54" (binary_expression "Target_mips<32" identifier < number_literal) (ERROR ",_true" , identifier) > (pointer_expression "*pTVar54" * identifier)) --) ;) (declaration "_Base_ptr p_Var55;" type_identifier identifier ;) (declaration "size_t sVar56;" primitive_type identifier ;) (declaration "undefined1 uVar57;" type_identifier identifier ;) (declaration "uint *puVar58;" type_identifier (pointer_declarator "*puVar58" * identifier) ;) (declaration "ulong uVar59;" type_identifier identifier ;) (declaration "uint uVar60;" type_identifier identifier ;) (declaration "bool bVar61;" primitive_type identifier ;) (declaration "bool bVar62;" primitive_type identifier ;) (declaration "bool bVar63;" primitive_type identifier ;) (declaration "bool bVar64;" primitive_type identifier ;) (declaration "undefined1 in_stack_fffffffffffffeb8;" type_identifier identifier ;) (declaration "Symbol *in_stack_fffffffffffffec0;" type_identifier (pointer_declarator "*in_stack_fffffffffffffec0" * identifier) ;) (declaration "undefined1 in_stack_fffffffffffffec8;" type_identifier identifier ;) (declaration "uint in_stack_fffffffffffffed0;" type_identifier identifier ;) (declaration "_List_node_base *in_stack_fffffffffffffed8;" type_identifier (pointer_declarator "*in_stack_fffffffffffffed8" * identifier) ;) (declaration "_List_node_base *in_stack_fffffffffffffee0;" type_identifier (pointer_declarator "*in_stack_fffffffffffffee0" * identifier) ;) (declaration "_List_node_base *in_stack_fffffffffffffee8;" type_identifier (pointer_declarator "*in_stack_fffffffffffffee8" * identifier) ;) (declaration "undefined4 uVar65;" type_identifier identifier ;) (declaration "_List_node_base *local_108;" type_identifier (pointer_declarator "*local_108" * identifier) ;) (declaration "uint local_f8;" type_identifier identifier ;) (declaration "uint local_f4;" type_identifier identifier ;) (declaration "byte local_ec;" type_identifier identifier ;) (declaration "uint local_e8;" type_identifier identifier ;) (declaration "byte local_e3;" type_identifier identifier ;) (declaration "bool local_e2;" primitive_type identifier ;) (declaration "bool local_e1;" primitive_type identifier ;) (expression_statement "Mips_relobj<32,_false> *local_d0;" (update_expression "Mips_relobj<32,_false> *local_d0" (binary_expression "Mips_relobj<32,_false> *local_d0" (binary_expression "Mips_relobj<32" identifier < number_literal) (ERROR ",_false" , identifier) > (pointer_expression "*local_d0" * identifier)) --) ;) (declaration "uint local_c8;" type_identifier identifier ;) (declaration "uint local_c4;" type_identifier identifier ;) (declaration "ulong local_c0;" type_identifier identifier ;) (declaration "uint local_b0;" type_identifier identifier ;) (declaration "_List_node_base *local_98;" type_identifier (pointer_declarator "*local_98" * identifier) ;) (declaration "uint r_types [3];" type_identifier (array_declarator "r_types [3]" identifier [ number_literal ]) ;) (expression_statement "Symbol_value<32> symval;" (update_expression "Symbol_value<32> symval" (binary_expression "Symbol_value<32> symval" (binary_expression "Symbol_value<32" identifier < number_literal) > identifier) --) ;) (declaration "string local_58;" type_identifier identifier ;) (expression_statement "bVar18 = 0;" (assignment_expression "bVar18 = 0" identifier = number_literal) ;) (expression_statement "uVar21 = *(uint *)(relinfo->reloc_shdr + 0x14);" (assignment_expression "uVar21 = *(uint *)(relinfo->reloc_shdr + 0x14)" identifier = (pointer_expression "*(uint *)(relinfo->reloc_shdr + 0x14)" * (cast_expression "(uint *)(relinfo->reloc_shdr + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(relinfo->reloc_shdr + 0x14)" ( (binary_expression "relinfo->reloc_shdr + 0x14" (field_expression "relinfo->reloc_shdr" identifier -> field_identifier) + number_literal) ))))) ;) (expression_statement "uVar60 = *(uint *)(relinfo->reloc_shdr + 0x24);" (assignment_expression "uVar60 = *(uint *)(relinfo->reloc_shdr + 0x24)" identifier = (pointer_expression "*(uint *)(relinfo->reloc_shdr + 0x24)" * (cast_expression "(uint *)(relinfo->reloc_shdr + 0x24)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(relinfo->reloc_shdr + 0x24)" ( (binary_expression "relinfo->reloc_shdr + 0x24" (field_expression "relinfo->reloc_shdr" identifier -> field_identifier) + number_literal) ))))) ;) (expression_statement "uVar43 = (ulong)(uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 |\n                  uVar21 << 0x18) /\n           (ulong)(uVar60 >> 0x18 | (uVar60 & 0xff0000) >> 8 | (uVar60 & 0xff00) << 8 |\n                  uVar60 << 0x18);" (assignment_expression "uVar43 = (ulong)(uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 |\n                  uVar21 << 0x18) /\n           (ulong)(uVar60 >> 0x18 | (uVar60 & 0xff0000) >> 8 | (uVar60 & 0xff00) << 8 |\n                  uVar60 << 0x18)" identifier = (binary_expression "(ulong)(uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 |\n                  uVar21 << 0x18) /\n           (ulong)(uVar60 >> 0x18 | (uVar60 & 0xff0000) >> 8 | (uVar60 & 0xff00) << 8 |\n                  uVar60 << 0x18)" (call_expression "(ulong)(uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 |\n                  uVar21 << 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 |\n                  uVar21 << 0x18)" ( (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 |\n                  uVar21 << 0x18" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar21 << 0x18" identifier << number_literal)) ))) / (call_expression "(ulong)(uVar60 >> 0x18 | (uVar60 & 0xff0000) >> 8 | (uVar60 & 0xff00) << 8 |\n                  uVar60 << 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar60 >> 0x18 | (uVar60 & 0xff0000) >> 8 | (uVar60 & 0xff00) << 8 |\n                  uVar60 << 0x18)" ( (binary_expression "uVar60 >> 0x18 | (uVar60 & 0xff0000) >> 8 | (uVar60 & 0xff00) << 8 |\n                  uVar60 << 0x18" (binary_expression "uVar60 >> 0x18 | (uVar60 & 0xff0000) >> 8 | (uVar60 & 0xff00) << 8" (binary_expression "uVar60 >> 0x18 | (uVar60 & 0xff0000) >> 8" (binary_expression "uVar60 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar60 & 0xff0000) >> 8" (parenthesized_expression "(uVar60 & 0xff0000)" ( (binary_expression "uVar60 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar60 & 0xff00) << 8" (parenthesized_expression "(uVar60 & 0xff00)" ( (binary_expression "uVar60 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar60 << 0x18" identifier << number_literal)) ))))) ;) (expression_statement "uVar21 = *(uint *)preloc;" (assignment_expression "uVar21 = *(uint *)preloc" identifier = (pointer_expression "*(uint *)preloc" * (cast_expression "(uint *)preloc" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar48 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;" (assignment_expression "uVar48 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar21 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar21 = *(uint *)(preloc + 4);" (assignment_expression "uVar21 = *(uint *)(preloc + 4)" identifier = (pointer_expression "*(uint *)(preloc + 4)" * (cast_expression "(uint *)(preloc + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(preloc + 4)" ( (binary_expression "preloc + 4" identifier + number_literal) ))))) ;) (expression_statement "uVar60 = uVar21 >> 0x18;" (assignment_expression "uVar60 = uVar21 >> 0x18" identifier = (binary_expression "uVar21 >> 0x18" identifier >> number_literal)) ;) (expression_statement "uVar49 = uVar60 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;" (assignment_expression "uVar49 = uVar60 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" identifier = (binary_expression "uVar60 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" (binary_expression "uVar60 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar60 | (uVar21 & 0xff0000) >> 8" identifier | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar21 << 0x18" identifier << number_literal))) ;) (expression_statement "_Var14 = uVar49 >> 8;" (assignment_expression "_Var14 = uVar49 >> 8" identifier = (binary_expression "uVar49 >> 8" identifier >> number_literal)) ;) (if_statement "if (rel_type == 4) {\n    local_c4 = 0;\n    uVar23 = *(uint *)(preloc + 8);\n    local_b0 = 0xffffffff;\n    local_c8 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;\n    if (relnum + 1 < uVar43) {\n      uVar23 = *(uint *)(preloc + 0xc);\n      local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18\n      ;\n      local_c4 = *(uint *)(preloc + 0x10) >> 0x18;\n    }\n  }\n  else if (relnum + 1 < uVar43) {\n    local_c8 = 0;\n    uVar23 = *(uint *)(preloc + 8);\n    local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;\n    local_c4 = *(uint *)(preloc + 0xc) >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" if (parenthesized_expression "(rel_type == 4)" ( (binary_expression "rel_type == 4" identifier == number_literal) )) (compound_statement "{\n    local_c4 = 0;\n    uVar23 = *(uint *)(preloc + 8);\n    local_b0 = 0xffffffff;\n    local_c8 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;\n    if (relnum + 1 < uVar43) {\n      uVar23 = *(uint *)(preloc + 0xc);\n      local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18\n      ;\n      local_c4 = *(uint *)(preloc + 0x10) >> 0x18;\n    }\n  }" { (expression_statement "local_c4 = 0;" (assignment_expression "local_c4 = 0" identifier = number_literal) ;) (expression_statement "uVar23 = *(uint *)(preloc + 8);" (assignment_expression "uVar23 = *(uint *)(preloc + 8)" identifier = (pointer_expression "*(uint *)(preloc + 8)" * (cast_expression "(uint *)(preloc + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(preloc + 8)" ( (binary_expression "preloc + 8" identifier + number_literal) ))))) ;) (expression_statement "local_b0 = 0xffffffff;" (assignment_expression "local_b0 = 0xffffffff" identifier = number_literal) ;) (expression_statement "local_c8 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;" (assignment_expression "local_c8 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18" identifier = (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18" (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8" (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8" (binary_expression "uVar23 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar23 & 0xff0000) >> 8" (parenthesized_expression "(uVar23 & 0xff0000)" ( (binary_expression "uVar23 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar23 & 0xff00) << 8" (parenthesized_expression "(uVar23 & 0xff00)" ( (binary_expression "uVar23 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar23 << 0x18" identifier << number_literal))) ;) (if_statement "if (relnum + 1 < uVar43) {\n      uVar23 = *(uint *)(preloc + 0xc);\n      local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18\n      ;\n      local_c4 = *(uint *)(preloc + 0x10) >> 0x18;\n    }" if (parenthesized_expression "(relnum + 1 < uVar43)" ( (binary_expression "relnum + 1 < uVar43" (binary_expression "relnum + 1" identifier + number_literal) < identifier) )) (compound_statement "{\n      uVar23 = *(uint *)(preloc + 0xc);\n      local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18\n      ;\n      local_c4 = *(uint *)(preloc + 0x10) >> 0x18;\n    }" { (expression_statement "uVar23 = *(uint *)(preloc + 0xc);" (assignment_expression "uVar23 = *(uint *)(preloc + 0xc)" identifier = (pointer_expression "*(uint *)(preloc + 0xc)" * (cast_expression "(uint *)(preloc + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(preloc + 0xc)" ( (binary_expression "preloc + 0xc" identifier + number_literal) ))))) ;) (expression_statement "local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18\n      ;" (assignment_expression "local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18" identifier = (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18" (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8" (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8" (binary_expression "uVar23 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar23 & 0xff0000) >> 8" (parenthesized_expression "(uVar23 & 0xff0000)" ( (binary_expression "uVar23 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar23 & 0xff00) << 8" (parenthesized_expression "(uVar23 & 0xff00)" ( (binary_expression "uVar23 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar23 << 0x18" identifier << number_literal))) ;) (expression_statement "local_c4 = *(uint *)(preloc + 0x10) >> 0x18;" (assignment_expression "local_c4 = *(uint *)(preloc + 0x10) >> 0x18" identifier = (binary_expression "*(uint *)(preloc + 0x10) >> 0x18" (pointer_expression "*(uint *)(preloc + 0x10)" * (cast_expression "(uint *)(preloc + 0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(preloc + 0x10)" ( (binary_expression "preloc + 0x10" identifier + number_literal) )))) >> number_literal)) ;) })) }) (else_clause "else if (relnum + 1 < uVar43) {\n    local_c8 = 0;\n    uVar23 = *(uint *)(preloc + 8);\n    local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;\n    local_c4 = *(uint *)(preloc + 0xc) >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" else (if_statement "if (relnum + 1 < uVar43) {\n    local_c8 = 0;\n    uVar23 = *(uint *)(preloc + 8);\n    local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;\n    local_c4 = *(uint *)(preloc + 0xc) >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" if (parenthesized_expression "(relnum + 1 < uVar43)" ( (binary_expression "relnum + 1 < uVar43" (binary_expression "relnum + 1" identifier + number_literal) < identifier) )) (compound_statement "{\n    local_c8 = 0;\n    uVar23 = *(uint *)(preloc + 8);\n    local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;\n    local_c4 = *(uint *)(preloc + 0xc) >> 0x18;\n  }" { (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) (expression_statement "uVar23 = *(uint *)(preloc + 8);" (assignment_expression "uVar23 = *(uint *)(preloc + 8)" identifier = (pointer_expression "*(uint *)(preloc + 8)" * (cast_expression "(uint *)(preloc + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(preloc + 8)" ( (binary_expression "preloc + 8" identifier + number_literal) ))))) ;) (expression_statement "local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;" (assignment_expression "local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18" identifier = (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18" (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8" (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8" (binary_expression "uVar23 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar23 & 0xff0000) >> 8" (parenthesized_expression "(uVar23 & 0xff0000)" ( (binary_expression "uVar23 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar23 & 0xff00) << 8" (parenthesized_expression "(uVar23 & 0xff00)" ( (binary_expression "uVar23 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar23 << 0x18" identifier << number_literal))) ;) (expression_statement "local_c4 = *(uint *)(preloc + 0xc) >> 0x18;" (assignment_expression "local_c4 = *(uint *)(preloc + 0xc) >> 0x18" identifier = (binary_expression "*(uint *)(preloc + 0xc) >> 0x18" (pointer_expression "*(uint *)(preloc + 0xc)" * (cast_expression "(uint *)(preloc + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(preloc + 0xc)" ( (binary_expression "preloc + 0xc" identifier + number_literal) )))) >> number_literal)) ;) }) (else_clause "else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" else (compound_statement "{\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" { (expression_statement "local_c4 = 0;" (assignment_expression "local_c4 = 0" identifier = number_literal) ;) (expression_statement "local_b0 = 0xffffffff;" (assignment_expression "local_b0 = 0xffffffff" identifier = number_literal) ;) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) }))))) (expression_statement "symval._8_4_ = 0x80000000;" (assignment_expression "symval._8_4_ = 0x80000000" (field_expression "symval._8_4_" identifier . field_identifier) = number_literal) ;) (expression_statement "symval.u_.value = 0;" (assignment_expression "symval.u_.value = 0" (field_expression "symval.u_.value" (field_expression "symval.u_" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "this_00 = (Mips_relobj<32,_false> *)relinfo->object;" (assignment_expression "this_00 = (Mips_relobj<32,_false> *)relinfo->object" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)relinfo->object" ( (comma_expression "Mips_relobj<32,_false> *)relinfo->object" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)relinfo->object" identifier > (pointer_expression "*)relinfo->object" * (ERROR ")" )) (field_expression "relinfo->object" identifier -> field_identifier)))) ))) ;) (expression_statement "symval.output_symtab_index_ = 0;" (assignment_expression "symval.output_symtab_index_ = 0" (field_expression "symval.output_symtab_index_" identifier . field_identifier) = number_literal) ;) (expression_statement "symval.output_dynsym_index_ = 0xffffffff;" (assignment_expression "symval.output_dynsym_index_ = 0xffffffff" (field_expression "symval.output_dynsym_index_" identifier . field_identifier) = number_literal) ;) if (parenthesized_expression "(gsym == (Sized_symbol<32> *)0x0)" ( (binary_expression "gsym == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) )) { (expression_statement "object = (_List_node_base **)(ulong)_Var14;" (assignment_expression "object = (_List_node_base **)(ulong)_Var14" identifier = (cast_expression "(_List_node_base **)(ulong)_Var14" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)_Var14" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "p_Var12 = (this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl.\n              super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p;" (field_expression "p_Var12 = (this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl.\n              super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p" (field_expression "p_Var12 = (this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl.\n              super__Bvector_impl_data._M_start.super__Bit_iterator_base" (field_expression "p_Var12 = (this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl.\n              super__Bvector_impl_data._M_start" (field_expression "p_Var12 = (this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl.\n              super__Bvector_impl_data" (field_expression "p_Var12 = (this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "p_Var12 = (this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_" (binary_expression "p_Var12 = (this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool" (assignment_expression "p_Var12 = (this_00->local_symbol_is_mips16_).super__Bvector_base<std" identifier = (binary_expression "(this_00->local_symbol_is_mips16_).super__Bvector_base<std" (field_expression "(this_00->local_symbol_is_mips16_).super__Bvector_base" (parenthesized_expression "(this_00->local_symbol_is_mips16_)" ( (field_expression "this_00->local_symbol_is_mips16_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) ;) (if_statement "if ((Mips_relobj<32,_false> *)\n        (((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl\n               .super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_offset) <= object) {\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }" if (parenthesized_expression "((Mips_relobj<32,_false> *)\n        (((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl\n               .super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_offset) <= object)" ( (parenthesized_expression "(Mips_relobj<32,_false> *)\n        (((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl\n               .super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_offset) <= object)" ( (comma_expression "Mips_relobj<32,_false> *)\n        (((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl\n               .super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_offset) <= object" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)\n        (((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl\n               .super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_offset) <= object" (binary_expression "_false> *)\n        (((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl\n               .super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_offset)" identifier > (pointer_expression "*)\n        (((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl\n               .super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_offset)" * (ERROR ")" )) (parenthesized_expression "(((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl\n               .super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_offset)" ( (field_expression "((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl\n               .super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_offset" (field_expression "((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl\n               .super__Bvector_impl_data._M_start.super__Bit_iterator_base" (field_expression "((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl\n               .super__Bvector_impl_data._M_start" (field_expression "((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl\n               .super__Bvector_impl_data" (field_expression "((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_" (binary_expression "((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool" (binary_expression "((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std" (binary_expression "((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) -\n        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base" (parenthesized_expression "((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8)" ( (binary_expression "(ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8" (field_expression "(ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset" (field_expression "(ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base" (field_expression "(ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish" (field_expression "(ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data" (field_expression "(ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl" (binary_expression "(ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_" (binary_expression "(ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool" (binary_expression "(ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std" (field_expression "(ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base" (call_expression "(ulong)(this_00->local_symbol_is_mips16_)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(this_00->local_symbol_is_mips16_)" ( (field_expression "this_00->local_symbol_is_mips16_" identifier -> field_identifier) ))) . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) + (binary_expression "((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8" (parenthesized_expression "((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12)" ( (binary_expression "(long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12" (field_expression "(long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p" (field_expression "(long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base" (field_expression "(long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish" (field_expression "(long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data" (field_expression "(long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl" (binary_expression "(long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_" (binary_expression "(long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool" (binary_expression "(long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std" (cast_expression "(long)(this_00->local_symbol_is_mips16_).super__Bvector_base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "(this_00->local_symbol_is_mips16_).super__Bvector_base" (parenthesized_expression "(this_00->local_symbol_is_mips16_)" ( (field_expression "this_00->local_symbol_is_mips16_" identifier -> field_identifier) )) . field_identifier)) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) - (cast_expression "(long)p_Var12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )) * number_literal)) )) - (field_expression "(ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base" (call_expression "(ulong)(this_00->local_symbol_is_mips16_)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(this_00->local_symbol_is_mips16_)" ( (field_expression "this_00->local_symbol_is_mips16_" identifier -> field_identifier) ))) . field_identifier)) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) )))) <= identifier)) )) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");" (call_expression "do_gold_unreachable("../../gold/mips.cc",0x65f,"local_symbol_is_mips16")" identifier (argument_list "("../../gold/mips.cc",0x65f,"local_symbol_is_mips16")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""local_symbol_is_mips16"" " string_content ") ))) ;)) })) (expression_statement "local_ec = (byte)((uVar21 & 0xff0000) >> 0x10);" (assignment_expression "local_ec = (byte)((uVar21 & 0xff0000) >> 0x10)" identifier = (call_expression "(byte)((uVar21 & 0xff0000) >> 0x10)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((uVar21 & 0xff0000) >> 0x10)" ( (binary_expression "(uVar21 & 0xff0000) >> 0x10" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal) )))) ;) (expression_statement "uVar29 = 1L << (local_ec & 0x3f);" (assignment_expression "uVar29 = 1L << (local_ec & 0x3f)" identifier = (binary_expression "1L << (local_ec & 0x3f)" number_literal << (parenthesized_expression "(local_ec & 0x3f)" ( (binary_expression "local_ec & 0x3f" identifier & number_literal) )))) ;) (expression_statement "uVar43 = p_Var12[uVar49 >> 0xe];" (assignment_expression "uVar43 = p_Var12[uVar49 >> 0xe]" identifier = (subscript_expression "p_Var12[uVar49 >> 0xe]" identifier [ (binary_expression "uVar49 >> 0xe" identifier >> number_literal) ])) ;) (expression_statement "p_Var12 = (this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n              _M_impl.super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p;" (field_expression "p_Var12 = (this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n              _M_impl.super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p" (field_expression "p_Var12 = (this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n              _M_impl.super__Bvector_impl_data._M_start.super__Bit_iterator_base" (field_expression "p_Var12 = (this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n              _M_impl.super__Bvector_impl_data._M_start" (field_expression "p_Var12 = (this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n              _M_impl.super__Bvector_impl_data" (field_expression "p_Var12 = (this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n              _M_impl" (binary_expression "p_Var12 = (this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_" (binary_expression "p_Var12 = (this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool" (assignment_expression "p_Var12 = (this_00->local_symbol_is_micromips_).super__Bvector_base<std" identifier = (binary_expression "(this_00->local_symbol_is_micromips_).super__Bvector_base<std" (field_expression "(this_00->local_symbol_is_micromips_).super__Bvector_base" (parenthesized_expression "(this_00->local_symbol_is_micromips_)" ( (field_expression "this_00->local_symbol_is_micromips_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) ;) (expression_statement "uVar59 = uVar29 & uVar43;" (assignment_expression "uVar59 = uVar29 & uVar43" identifier = (binary_expression "uVar29 & uVar43" identifier & identifier)) ;) (expression_statement "puVar58 = (uint *)(ulong)(uVar59 != 0);" (assignment_expression "puVar58 = (uint *)(ulong)(uVar59 != 0)" identifier = (cast_expression "(uint *)(ulong)(uVar59 != 0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(ulong)(uVar59 != 0)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar59 != 0)" ( (binary_expression "uVar59 != 0" identifier != number_literal) ))))) ;) (expression_statement "sVar56 = (size_t)(this_00->local_symbol_is_micromips_).\n                     super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                     _M_start.super__Bit_iterator_base._M_offset;" (field_expression "sVar56 = (size_t)(this_00->local_symbol_is_micromips_).\n                     super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                     _M_start.super__Bit_iterator_base._M_offset" (field_expression "sVar56 = (size_t)(this_00->local_symbol_is_micromips_).\n                     super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                     _M_start.super__Bit_iterator_base" (field_expression "sVar56 = (size_t)(this_00->local_symbol_is_micromips_).\n                     super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                     _M_start" (field_expression "sVar56 = (size_t)(this_00->local_symbol_is_micromips_).\n                     super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "sVar56 = (size_t)(this_00->local_symbol_is_micromips_).\n                     super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "sVar56 = (size_t)(this_00->local_symbol_is_micromips_).\n                     super__Bvector_base<std::allocator<bool>_" (binary_expression "sVar56 = (size_t)(this_00->local_symbol_is_micromips_).\n                     super__Bvector_base<std::allocator<bool" (assignment_expression "sVar56 = (size_t)(this_00->local_symbol_is_micromips_).\n                     super__Bvector_base<std" identifier = (binary_expression "(size_t)(this_00->local_symbol_is_micromips_).\n                     super__Bvector_base<std" (cast_expression "(size_t)(this_00->local_symbol_is_micromips_).\n                     super__Bvector_base" ( (type_descriptor "size_t" primitive_type) ) (field_expression "(this_00->local_symbol_is_micromips_).\n                     super__Bvector_base" (parenthesized_expression "(this_00->local_symbol_is_micromips_)" ( (field_expression "this_00->local_symbol_is_micromips_" identifier -> field_identifier) )) . field_identifier)) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) ;) (if_statement "if ((Mips_relobj<32,_false> *)\n        (((ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) - sVar56) <= object) {\nLAB_002c821c:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }" if (parenthesized_expression "((Mips_relobj<32,_false> *)\n        (((ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) - sVar56) <= object)" ( (parenthesized_expression "(Mips_relobj<32,_false> *)\n        (((ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) - sVar56) <= object)" ( (comma_expression "Mips_relobj<32,_false> *)\n        (((ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) - sVar56) <= object" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)\n        (((ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) - sVar56) <= object" (binary_expression "_false> *)\n        (((ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) - sVar56)" identifier > (pointer_expression "*)\n        (((ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) - sVar56)" * (ERROR ")" )) (parenthesized_expression "(((ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) - sVar56)" ( (binary_expression "((ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8) - sVar56" (parenthesized_expression "((ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8)" ( (binary_expression "(ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +\n         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8" (field_expression "(ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset" (field_expression "(ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base" (field_expression "(ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data._M_finish" (field_expression "(ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl.super__Bvector_impl_data" (field_expression "(ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                 _M_impl" (binary_expression "(ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_" (binary_expression "(ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool" (binary_expression "(ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std" (field_expression "(ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base" (call_expression "(ulong)(this_00->local_symbol_is_micromips_)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(this_00->local_symbol_is_micromips_)" ( (field_expression "this_00->local_symbol_is_micromips_" identifier -> field_identifier) ))) . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) + (binary_expression "((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12) * 8" (parenthesized_expression "((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12)" ( (binary_expression "(long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -\n         (long)p_Var12" (field_expression "(long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p" (field_expression "(long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base" (field_expression "(long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data._M_finish" (field_expression "(long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl.super__Bvector_impl_data" (field_expression "(long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.\n                _M_impl" (binary_expression "(long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_" (binary_expression "(long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool" (binary_expression "(long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std" (cast_expression "(long)(this_00->local_symbol_is_micromips_).super__Bvector_base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "(this_00->local_symbol_is_micromips_).super__Bvector_base" (parenthesized_expression "(this_00->local_symbol_is_micromips_)" ( (field_expression "this_00->local_symbol_is_micromips_" identifier -> field_identifier) )) . field_identifier)) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) - (cast_expression "(long)p_Var12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )) * number_literal)) )) - identifier) )))) <= identifier)) )) )) (compound_statement "{\nLAB_002c821c:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }" { (labeled_statement "LAB_002c821c:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x668,"local_symbol_is_micromips");" statement_identifier : comment (labeled_statement "gold::do_gold_unreachable("../../gold/mips.cc",0x668,"local_symbol_is_micromips");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/mips.cc",0x668,"local_symbol_is_micromips");" (call_expression "do_gold_unreachable("../../gold/mips.cc",0x668,"local_symbol_is_micromips")" identifier (argument_list "("../../gold/mips.cc",0x668,"local_symbol_is_micromips")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""local_symbol_is_micromips"" " string_content ") ))) ;))) })) (expression_statement "uVar11 = p_Var12[uVar49 >> 0xe];" (assignment_expression "uVar11 = p_Var12[uVar49 >> 0xe]" identifier = (subscript_expression "p_Var12[uVar49 >> 0xe]" identifier [ (binary_expression "uVar49 >> 0xe" identifier >> number_literal) ])) ;) (expression_statement "uVar21 = (uint)((uVar29 & uVar11) != 0);" (assignment_expression "uVar21 = (uint)((uVar29 & uVar11) != 0)" identifier = (call_expression "(uint)((uVar29 & uVar11) != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uVar29 & uVar11) != 0)" ( (binary_expression "(uVar29 & uVar11) != 0" (parenthesized_expression "(uVar29 & uVar11)" ( (binary_expression "uVar29 & uVar11" identifier & identifier) )) != number_literal) )))) ;) (expression_statement "local_e1 = ((uVar43 | uVar11) & uVar29) != 0;" (assignment_expression "local_e1 = ((uVar43 | uVar11) & uVar29) != 0" identifier = (binary_expression "((uVar43 | uVar11) & uVar29) != 0" (parenthesized_expression "((uVar43 | uVar11) & uVar29)" ( (binary_expression "(uVar43 | uVar11) & uVar29" (parenthesized_expression "(uVar43 | uVar11)" ( (binary_expression "uVar43 | uVar11" identifier | identifier) )) & identifier) )) != number_literal)) ;) (if_statement "if (local_e1) {\n      object = (_List_node_base **)this_00;\n                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */\n      symval.u_.value =\n           gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,1);\n      psymval = &symval;\n    }" if (parenthesized_expression "(local_e1)" ( identifier )) (compound_statement "{\n      object = (_List_node_base **)this_00;\n                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */\n      symval.u_.value =\n           gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,1);\n      psymval = &symval;\n    }" { (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) comment (expression_statement "symval.u_.value =\n           gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,1);" (binary_expression "symval.u_.value =\n           gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,1)" (binary_expression "symval.u_.value =\n           gold::Symbol_value<32>::value<true" (binary_expression "symval.u_.value =\n           gold::Symbol_value<32>::value" (binary_expression "symval.u_.value =\n           gold::Symbol_value<32" (assignment_expression "symval.u_.value =\n           gold" (field_expression "symval.u_.value" (field_expression "symval.u_" identifier . field_identifier) . field_identifier) = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,1)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,1)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,1)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,1" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,1" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , number_literal)) ))) ))) ;) (expression_statement "psymval = &symval;" (assignment_expression "psymval = &symval" identifier = (pointer_expression "&symval" & identifier)) ;) })) (if_statement "if (uVar60 == 100) {\n      p_Var55 = (((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header._M_header._M_parent;\n      p_Var3 = &(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header;\n      if (p_Var55 != (_Base_ptr)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        p_Var37 = p_Var55;\n        p_Var36 = &p_Var3->_M_header;\n        do {\n          if (p_Var37[1]._M_color < _Var14) {\n            p_Var33 = p_Var37->_M_right;\n          }\n          else {\n            p_Var33 = p_Var37->_M_left;\n            p_Var36 = p_Var37;\n          }\n          p_Var37 = p_Var33;\n        } while (p_Var33 != (_Base_ptr)0x0);\n        if (((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) &&\n           (p_Var36[1]._M_parent != (_Base_ptr)0x0)) {\n          p_Var37 = &p_Var3->_M_header;\n          if (uVar59 == 0) {\n            do {\n              p_Var36 = p_Var55;\n              if (p_Var36[1]._M_color < _Var14) {\n                p_Var55 = p_Var36->_M_right;\n                p_Var36 = p_Var37;\n              }\n              else {\n                p_Var55 = p_Var36->_M_left;\n              }\n              p_Var37 = p_Var36;\n            } while (p_Var55 != (_Base_ptr)0x0);\n            pMVar42 = (Mips_relobj<32,_false> *)0x0;\n            if ((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) {\n              pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;\n            }\n            puVar58 = (uint *)0x0;\n            local_f8 = 0;\n            goto LAB_002c5870;\n          }\n          puVar58 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      local_f8 = 0;\n      goto LAB_002c56df;\n    }" if (parenthesized_expression "(uVar60 == 100)" ( (binary_expression "uVar60 == 100" identifier == number_literal) )) (compound_statement "{\n      p_Var55 = (((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header._M_header._M_parent;\n      p_Var3 = &(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header;\n      if (p_Var55 != (_Base_ptr)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        p_Var37 = p_Var55;\n        p_Var36 = &p_Var3->_M_header;\n        do {\n          if (p_Var37[1]._M_color < _Var14) {\n            p_Var33 = p_Var37->_M_right;\n          }\n          else {\n            p_Var33 = p_Var37->_M_left;\n            p_Var36 = p_Var37;\n          }\n          p_Var37 = p_Var33;\n        } while (p_Var33 != (_Base_ptr)0x0);\n        if (((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) &&\n           (p_Var36[1]._M_parent != (_Base_ptr)0x0)) {\n          p_Var37 = &p_Var3->_M_header;\n          if (uVar59 == 0) {\n            do {\n              p_Var36 = p_Var55;\n              if (p_Var36[1]._M_color < _Var14) {\n                p_Var55 = p_Var36->_M_right;\n                p_Var36 = p_Var37;\n              }\n              else {\n                p_Var55 = p_Var36->_M_left;\n              }\n              p_Var37 = p_Var36;\n            } while (p_Var55 != (_Base_ptr)0x0);\n            pMVar42 = (Mips_relobj<32,_false> *)0x0;\n            if ((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) {\n              pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;\n            }\n            puVar58 = (uint *)0x0;\n            local_f8 = 0;\n            goto LAB_002c5870;\n          }\n          puVar58 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      local_f8 = 0;\n      goto LAB_002c56df;\n    }" { (expression_statement "p_Var55 = (((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header._M_header._M_parent;" (assignment_expression "p_Var55 = (((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header._M_header._M_parent" identifier = (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header._M_header._M_parent" (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header._M_header" (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header" (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl" (parenthesized_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)" ( (field_expression "((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t" (parenthesized_expression "((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)" ( (cast_expression "(Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_" ( (type_descriptor "Mips16_stubs_int_map *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->local_mips16_call_stubs_" & (field_expression "this_00->local_mips16_call_stubs_" identifier -> field_identifier))) )) -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) . field_identifier)) ;) (expression_statement "p_Var3 = &(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header;" (assignment_expression "p_Var3 = &(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header" identifier = (pointer_expression "&(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header" & (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.\n                super__Rb_tree_header" (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl" (parenthesized_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)" ( (field_expression "((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t" (parenthesized_expression "((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)" ( (cast_expression "(Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_" ( (type_descriptor "Mips16_stubs_int_map *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->local_mips16_call_stubs_" & (field_expression "this_00->local_mips16_call_stubs_" identifier -> field_identifier))) )) -> field_identifier) )) . field_identifier) . field_identifier))) ;) (if_statement "if (p_Var55 != (_Base_ptr)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        p_Var37 = p_Var55;\n        p_Var36 = &p_Var3->_M_header;\n        do {\n          if (p_Var37[1]._M_color < _Var14) {\n            p_Var33 = p_Var37->_M_right;\n          }\n          else {\n            p_Var33 = p_Var37->_M_left;\n            p_Var36 = p_Var37;\n          }\n          p_Var37 = p_Var33;\n        } while (p_Var33 != (_Base_ptr)0x0);\n        if (((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) &&\n           (p_Var36[1]._M_parent != (_Base_ptr)0x0)) {\n          p_Var37 = &p_Var3->_M_header;\n          if (uVar59 == 0) {\n            do {\n              p_Var36 = p_Var55;\n              if (p_Var36[1]._M_color < _Var14) {\n                p_Var55 = p_Var36->_M_right;\n                p_Var36 = p_Var37;\n              }\n              else {\n                p_Var55 = p_Var36->_M_left;\n              }\n              p_Var37 = p_Var36;\n            } while (p_Var55 != (_Base_ptr)0x0);\n            pMVar42 = (Mips_relobj<32,_false> *)0x0;\n            if ((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) {\n              pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;\n            }\n            puVar58 = (uint *)0x0;\n            local_f8 = 0;\n            goto LAB_002c5870;\n          }\n          puVar58 = (uint *)0x1;\n        }\n      }" if (parenthesized_expression "(p_Var55 != (_Base_ptr)0x0)" ( (binary_expression "p_Var55 != (_Base_ptr)0x0" identifier != (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) (compound_statement "{\n        object = (_List_node_base **)(ulong)_Var14;\n        p_Var37 = p_Var55;\n        p_Var36 = &p_Var3->_M_header;\n        do {\n          if (p_Var37[1]._M_color < _Var14) {\n            p_Var33 = p_Var37->_M_right;\n          }\n          else {\n            p_Var33 = p_Var37->_M_left;\n            p_Var36 = p_Var37;\n          }\n          p_Var37 = p_Var33;\n        } while (p_Var33 != (_Base_ptr)0x0);\n        if (((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) &&\n           (p_Var36[1]._M_parent != (_Base_ptr)0x0)) {\n          p_Var37 = &p_Var3->_M_header;\n          if (uVar59 == 0) {\n            do {\n              p_Var36 = p_Var55;\n              if (p_Var36[1]._M_color < _Var14) {\n                p_Var55 = p_Var36->_M_right;\n                p_Var36 = p_Var37;\n              }\n              else {\n                p_Var55 = p_Var36->_M_left;\n              }\n              p_Var37 = p_Var36;\n            } while (p_Var55 != (_Base_ptr)0x0);\n            pMVar42 = (Mips_relobj<32,_false> *)0x0;\n            if ((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) {\n              pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;\n            }\n            puVar58 = (uint *)0x0;\n            local_f8 = 0;\n            goto LAB_002c5870;\n          }\n          puVar58 = (uint *)0x1;\n        }\n      }" { (expression_statement "object = (_List_node_base **)(ulong)_Var14;" (assignment_expression "object = (_List_node_base **)(ulong)_Var14" identifier = (cast_expression "(_List_node_base **)(ulong)_Var14" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)_Var14" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "p_Var37 = p_Var55;" (assignment_expression "p_Var37 = p_Var55" identifier = identifier) ;) (expression_statement "p_Var36 = &p_Var3->_M_header;" (assignment_expression "p_Var36 = &p_Var3->_M_header" identifier = (pointer_expression "&p_Var3->_M_header" & (field_expression "p_Var3->_M_header" identifier -> field_identifier))) ;) (do_statement "do {\n          if (p_Var37[1]._M_color < _Var14) {\n            p_Var33 = p_Var37->_M_right;\n          }\n          else {\n            p_Var33 = p_Var37->_M_left;\n            p_Var36 = p_Var37;\n          }\n          p_Var37 = p_Var33;\n        } while (p_Var33 != (_Base_ptr)0x0);" do (compound_statement "{\n          if (p_Var37[1]._M_color < _Var14) {\n            p_Var33 = p_Var37->_M_right;\n          }\n          else {\n            p_Var33 = p_Var37->_M_left;\n            p_Var36 = p_Var37;\n          }\n          p_Var37 = p_Var33;\n        }" { (if_statement "if (p_Var37[1]._M_color < _Var14) {\n            p_Var33 = p_Var37->_M_right;\n          }\n          else {\n            p_Var33 = p_Var37->_M_left;\n            p_Var36 = p_Var37;\n          }" if (parenthesized_expression "(p_Var37[1]._M_color < _Var14)" ( (binary_expression "p_Var37[1]._M_color < _Var14" (field_expression "p_Var37[1]._M_color" (subscript_expression "p_Var37[1]" identifier [ number_literal ]) . field_identifier) < identifier) )) (compound_statement "{\n            p_Var33 = p_Var37->_M_right;\n          }" { (expression_statement "p_Var33 = p_Var37->_M_right;" (assignment_expression "p_Var33 = p_Var37->_M_right" identifier = (field_expression "p_Var37->_M_right" identifier -> field_identifier)) ;) }) (else_clause "else {\n            p_Var33 = p_Var37->_M_left;\n            p_Var36 = p_Var37;\n          }" else (compound_statement "{\n            p_Var33 = p_Var37->_M_left;\n            p_Var36 = p_Var37;\n          }" { (expression_statement "p_Var33 = p_Var37->_M_left;" (assignment_expression "p_Var33 = p_Var37->_M_left" identifier = (field_expression "p_Var37->_M_left" identifier -> field_identifier)) ;) (expression_statement "p_Var36 = p_Var37;" (assignment_expression "p_Var36 = p_Var37" identifier = identifier) ;) }))) (expression_statement "p_Var37 = p_Var33;" (assignment_expression "p_Var37 = p_Var33" identifier = identifier) ;) }) while (parenthesized_expression "(p_Var33 != (_Base_ptr)0x0)" ( (binary_expression "p_Var33 != (_Base_ptr)0x0" identifier != (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) ;) (if_statement "if (((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) &&\n           (p_Var36[1]._M_parent != (_Base_ptr)0x0)) {\n          p_Var37 = &p_Var3->_M_header;\n          if (uVar59 == 0) {\n            do {\n              p_Var36 = p_Var55;\n              if (p_Var36[1]._M_color < _Var14) {\n                p_Var55 = p_Var36->_M_right;\n                p_Var36 = p_Var37;\n              }\n              else {\n                p_Var55 = p_Var36->_M_left;\n              }\n              p_Var37 = p_Var36;\n            } while (p_Var55 != (_Base_ptr)0x0);\n            pMVar42 = (Mips_relobj<32,_false> *)0x0;\n            if ((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) {\n              pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;\n            }\n            puVar58 = (uint *)0x0;\n            local_f8 = 0;\n            goto LAB_002c5870;\n          }\n          puVar58 = (uint *)0x1;\n        }" if (parenthesized_expression "(((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) &&\n           (p_Var36[1]._M_parent != (_Base_ptr)0x0))" ( (binary_expression "((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) &&\n           (p_Var36[1]._M_parent != (_Base_ptr)0x0)" (parenthesized_expression "((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14))" ( (binary_expression "(p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)" (parenthesized_expression "(p_Var3 != (_Rb_tree_header *)p_Var36)" ( (binary_expression "p_Var3 != (_Rb_tree_header *)p_Var36" identifier != (cast_expression "(_Rb_tree_header *)p_Var36" ( (type_descriptor "_Rb_tree_header *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) && (parenthesized_expression "(p_Var36[1]._M_color <= _Var14)" ( (binary_expression "p_Var36[1]._M_color <= _Var14" (field_expression "p_Var36[1]._M_color" (subscript_expression "p_Var36[1]" identifier [ number_literal ]) . field_identifier) <= identifier) ))) )) && (parenthesized_expression "(p_Var36[1]._M_parent != (_Base_ptr)0x0)" ( (binary_expression "p_Var36[1]._M_parent != (_Base_ptr)0x0" (field_expression "p_Var36[1]._M_parent" (subscript_expression "p_Var36[1]" identifier [ number_literal ]) . field_identifier) != (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) ))) )) (compound_statement "{\n          p_Var37 = &p_Var3->_M_header;\n          if (uVar59 == 0) {\n            do {\n              p_Var36 = p_Var55;\n              if (p_Var36[1]._M_color < _Var14) {\n                p_Var55 = p_Var36->_M_right;\n                p_Var36 = p_Var37;\n              }\n              else {\n                p_Var55 = p_Var36->_M_left;\n              }\n              p_Var37 = p_Var36;\n            } while (p_Var55 != (_Base_ptr)0x0);\n            pMVar42 = (Mips_relobj<32,_false> *)0x0;\n            if ((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) {\n              pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;\n            }\n            puVar58 = (uint *)0x0;\n            local_f8 = 0;\n            goto LAB_002c5870;\n          }\n          puVar58 = (uint *)0x1;\n        }" { (expression_statement "p_Var37 = &p_Var3->_M_header;" (assignment_expression "p_Var37 = &p_Var3->_M_header" identifier = (pointer_expression "&p_Var3->_M_header" & (field_expression "p_Var3->_M_header" identifier -> field_identifier))) ;) (if_statement "if (uVar59 == 0) {\n            do {\n              p_Var36 = p_Var55;\n              if (p_Var36[1]._M_color < _Var14) {\n                p_Var55 = p_Var36->_M_right;\n                p_Var36 = p_Var37;\n              }\n              else {\n                p_Var55 = p_Var36->_M_left;\n              }\n              p_Var37 = p_Var36;\n            } while (p_Var55 != (_Base_ptr)0x0);\n            pMVar42 = (Mips_relobj<32,_false> *)0x0;\n            if ((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) {\n              pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;\n            }\n            puVar58 = (uint *)0x0;\n            local_f8 = 0;\n            goto LAB_002c5870;\n          }" if (parenthesized_expression "(uVar59 == 0)" ( (binary_expression "uVar59 == 0" identifier == number_literal) )) (compound_statement "{\n            do {\n              p_Var36 = p_Var55;\n              if (p_Var36[1]._M_color < _Var14) {\n                p_Var55 = p_Var36->_M_right;\n                p_Var36 = p_Var37;\n              }\n              else {\n                p_Var55 = p_Var36->_M_left;\n              }\n              p_Var37 = p_Var36;\n            } while (p_Var55 != (_Base_ptr)0x0);\n            pMVar42 = (Mips_relobj<32,_false> *)0x0;\n            if ((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) {\n              pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;\n            }\n            puVar58 = (uint *)0x0;\n            local_f8 = 0;\n            goto LAB_002c5870;\n          }" { (do_statement "do {\n              p_Var36 = p_Var55;\n              if (p_Var36[1]._M_color < _Var14) {\n                p_Var55 = p_Var36->_M_right;\n                p_Var36 = p_Var37;\n              }\n              else {\n                p_Var55 = p_Var36->_M_left;\n              }\n              p_Var37 = p_Var36;\n            } while (p_Var55 != (_Base_ptr)0x0);" do (compound_statement "{\n              p_Var36 = p_Var55;\n              if (p_Var36[1]._M_color < _Var14) {\n                p_Var55 = p_Var36->_M_right;\n                p_Var36 = p_Var37;\n              }\n              else {\n                p_Var55 = p_Var36->_M_left;\n              }\n              p_Var37 = p_Var36;\n            }" { (expression_statement "p_Var36 = p_Var55;" (assignment_expression "p_Var36 = p_Var55" identifier = identifier) ;) (if_statement "if (p_Var36[1]._M_color < _Var14) {\n                p_Var55 = p_Var36->_M_right;\n                p_Var36 = p_Var37;\n              }\n              else {\n                p_Var55 = p_Var36->_M_left;\n              }" if (parenthesized_expression "(p_Var36[1]._M_color < _Var14)" ( (binary_expression "p_Var36[1]._M_color < _Var14" (field_expression "p_Var36[1]._M_color" (subscript_expression "p_Var36[1]" identifier [ number_literal ]) . field_identifier) < identifier) )) (compound_statement "{\n                p_Var55 = p_Var36->_M_right;\n                p_Var36 = p_Var37;\n              }" { (expression_statement "p_Var55 = p_Var36->_M_right;" (assignment_expression "p_Var55 = p_Var36->_M_right" identifier = (field_expression "p_Var36->_M_right" identifier -> field_identifier)) ;) (expression_statement "p_Var36 = p_Var37;" (assignment_expression "p_Var36 = p_Var37" identifier = identifier) ;) }) (else_clause "else {\n                p_Var55 = p_Var36->_M_left;\n              }" else (compound_statement "{\n                p_Var55 = p_Var36->_M_left;\n              }" { (expression_statement "p_Var55 = p_Var36->_M_left;" (assignment_expression "p_Var55 = p_Var36->_M_left" identifier = (field_expression "p_Var36->_M_left" identifier -> field_identifier)) ;) }))) (expression_statement "p_Var37 = p_Var36;" (assignment_expression "p_Var37 = p_Var36" identifier = identifier) ;) }) while (parenthesized_expression "(p_Var55 != (_Base_ptr)0x0)" ( (binary_expression "p_Var55 != (_Base_ptr)0x0" identifier != (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) ;) (expression_statement "pMVar42 = (Mips_relobj<32,_false> *)0x0;" (assignment_expression "pMVar42 = (Mips_relobj<32,_false> *)0x0" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)0x0" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) ;) (if_statement "if ((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) {\n              pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;\n            }" if (parenthesized_expression "((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14))" ( (binary_expression "(p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)" (parenthesized_expression "(p_Var3 != (_Rb_tree_header *)p_Var36)" ( (binary_expression "p_Var3 != (_Rb_tree_header *)p_Var36" identifier != (cast_expression "(_Rb_tree_header *)p_Var36" ( (type_descriptor "_Rb_tree_header *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) && (parenthesized_expression "(p_Var36[1]._M_color <= _Var14)" ( (binary_expression "p_Var36[1]._M_color <= _Var14" (field_expression "p_Var36[1]._M_color" (subscript_expression "p_Var36[1]" identifier [ number_literal ]) . field_identifier) <= identifier) ))) )) (compound_statement "{\n              pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;\n            }" { (expression_statement "pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;" (assignment_expression "pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)p_Var36[1]._M_parent" ( (comma_expression "Mips_relobj<32,_false> *)p_Var36[1]._M_parent" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)p_Var36[1]._M_parent" identifier > (pointer_expression "*)p_Var36[1]._M_parent" * (ERROR ")" )) (field_expression "p_Var36[1]._M_parent" (subscript_expression "p_Var36[1]" identifier [ number_literal ]) . field_identifier)))) ))) ;) })) (expression_statement "puVar58 = (uint *)0x0;" (assignment_expression "puVar58 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_f8 = 0;" (assignment_expression "local_f8 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;) })) (expression_statement "puVar58 = (uint *)0x1;" (assignment_expression "puVar58 = (uint *)0x1" identifier = (cast_expression "(uint *)0x1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) })) (labeled_statement "LAB_002c56d8:\n      local_f8 = 0;" statement_identifier : (expression_statement "local_f8 = 0;" (assignment_expression "local_f8 = 0" identifier = number_literal) ;)) (goto_statement "goto LAB_002c56df;" goto statement_identifier ;) })) (expression_statement "p_Var3 = &(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n              super__Rb_tree_header;" (assignment_expression "p_Var3 = &(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n              super__Rb_tree_header" identifier = (pointer_expression "&(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n              super__Rb_tree_header" & (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n              super__Rb_tree_header" (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl" (parenthesized_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)" ( (field_expression "((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t" (parenthesized_expression "((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)" ( (cast_expression "(Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_" ( (type_descriptor "Mips16_stubs_int_map *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->local_mips16_fn_stubs_" & (field_expression "this_00->local_mips16_fn_stubs_" identifier -> field_identifier))) )) -> field_identifier) )) . field_identifier) . field_identifier))) ;) (expression_statement "p_Var55 = (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n              super__Rb_tree_header._M_header._M_parent;" (assignment_expression "p_Var55 = (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n              super__Rb_tree_header._M_header._M_parent" identifier = (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n              super__Rb_tree_header._M_header._M_parent" (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n              super__Rb_tree_header._M_header" (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n              super__Rb_tree_header" (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl" (parenthesized_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)" ( (field_expression "((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t" (parenthesized_expression "((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)" ( (cast_expression "(Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_" ( (type_descriptor "Mips16_stubs_int_map *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->local_mips16_fn_stubs_" & (field_expression "this_00->local_mips16_fn_stubs_" identifier -> field_identifier))) )) -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) . field_identifier)) ;) (if_statement "if (p_Var55 == (_Base_ptr)0x0) goto LAB_002c56d8;" if (parenthesized_expression "(p_Var55 == (_Base_ptr)0x0)" ( (binary_expression "p_Var55 == (_Base_ptr)0x0" identifier == (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) (goto_statement "goto LAB_002c56d8;" goto statement_identifier ;)) (expression_statement "object = (_List_node_base **)(ulong)_Var14;" (assignment_expression "object = (_List_node_base **)(ulong)_Var14" identifier = (cast_expression "(_List_node_base **)(ulong)_Var14" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)_Var14" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "p_Var37 = &p_Var3->_M_header;" (assignment_expression "p_Var37 = &p_Var3->_M_header" identifier = (pointer_expression "&p_Var3->_M_header" & (field_expression "p_Var3->_M_header" identifier -> field_identifier))) ;) (do_statement "do {\n      while (p_Var36 = p_Var55, p_Var36[1]._M_color < _Var14) {\n        pp_Var2 = &p_Var36->_M_right;\n        p_Var55 = *pp_Var2;\n        p_Var36 = p_Var37;\n        if (*pp_Var2 == (_Base_ptr)0x0) goto LAB_002c66ba;\n      }\n      p_Var55 = p_Var36->_M_left;\n      p_Var37 = p_Var36;\n    } while (p_Var36->_M_left != (_Base_ptr)0x0);" do (compound_statement "{\n      while (p_Var36 = p_Var55, p_Var36[1]._M_color < _Var14) {\n        pp_Var2 = &p_Var36->_M_right;\n        p_Var55 = *pp_Var2;\n        p_Var36 = p_Var37;\n        if (*pp_Var2 == (_Base_ptr)0x0) goto LAB_002c66ba;\n      }\n      p_Var55 = p_Var36->_M_left;\n      p_Var37 = p_Var36;\n    }" { (while_statement "while (p_Var36 = p_Var55, p_Var36[1]._M_color < _Var14) {\n        pp_Var2 = &p_Var36->_M_right;\n        p_Var55 = *pp_Var2;\n        p_Var36 = p_Var37;\n        if (*pp_Var2 == (_Base_ptr)0x0) goto LAB_002c66ba;\n      }" while (parenthesized_expression "(p_Var36 = p_Var55, p_Var36[1]._M_color < _Var14)" ( (comma_expression "p_Var36 = p_Var55, p_Var36[1]._M_color < _Var14" (assignment_expression "p_Var36 = p_Var55" identifier = identifier) , (binary_expression "p_Var36[1]._M_color < _Var14" (field_expression "p_Var36[1]._M_color" (subscript_expression "p_Var36[1]" identifier [ number_literal ]) . field_identifier) < identifier)) )) (compound_statement "{\n        pp_Var2 = &p_Var36->_M_right;\n        p_Var55 = *pp_Var2;\n        p_Var36 = p_Var37;\n        if (*pp_Var2 == (_Base_ptr)0x0) goto LAB_002c66ba;\n      }" { (expression_statement "pp_Var2 = &p_Var36->_M_right;" (assignment_expression "pp_Var2 = &p_Var36->_M_right" identifier = (pointer_expression "&p_Var36->_M_right" & (field_expression "p_Var36->_M_right" identifier -> field_identifier))) ;) (expression_statement "p_Var55 = *pp_Var2;" (assignment_expression "p_Var55 = *pp_Var2" identifier = (pointer_expression "*pp_Var2" * identifier)) ;) (expression_statement "p_Var36 = p_Var37;" (assignment_expression "p_Var36 = p_Var37" identifier = identifier) ;) (if_statement "if (*pp_Var2 == (_Base_ptr)0x0) goto LAB_002c66ba;" if (parenthesized_expression "(*pp_Var2 == (_Base_ptr)0x0)" ( (binary_expression "*pp_Var2 == (_Base_ptr)0x0" (pointer_expression "*pp_Var2" * identifier) == (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) (goto_statement "goto LAB_002c66ba;" goto statement_identifier ;)) })) (expression_statement "p_Var55 = p_Var36->_M_left;" (assignment_expression "p_Var55 = p_Var36->_M_left" identifier = (field_expression "p_Var36->_M_left" identifier -> field_identifier)) ;) (expression_statement "p_Var37 = p_Var36;" (assignment_expression "p_Var37 = p_Var36" identifier = identifier) ;) }) while (parenthesized_expression "(p_Var36->_M_left != (_Base_ptr)0x0)" ( (binary_expression "p_Var36->_M_left != (_Base_ptr)0x0" (field_expression "p_Var36->_M_left" identifier -> field_identifier) != (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal)) )) ;) (labeled_statement "LAB_002c66ba:\n    if (((p_Var3 == (_Rb_tree_header *)p_Var36) || (_Var14 < p_Var36[1]._M_color)) ||\n       (local_f8 = 0, p_Var36[1]._M_parent == (_Base_ptr)0x0)) goto LAB_002c56d8;" statement_identifier : (if_statement "if (((p_Var3 == (_Rb_tree_header *)p_Var36) || (_Var14 < p_Var36[1]._M_color)) ||\n       (local_f8 = 0, p_Var36[1]._M_parent == (_Base_ptr)0x0)) goto LAB_002c56d8;" if (parenthesized_expression "(((p_Var3 == (_Rb_tree_header *)p_Var36) || (_Var14 < p_Var36[1]._M_color)) ||\n       (local_f8 = 0, p_Var36[1]._M_parent == (_Base_ptr)0x0))" ( (binary_expression "((p_Var3 == (_Rb_tree_header *)p_Var36) || (_Var14 < p_Var36[1]._M_color)) ||\n       (local_f8 = 0, p_Var36[1]._M_parent == (_Base_ptr)0x0)" (parenthesized_expression "((p_Var3 == (_Rb_tree_header *)p_Var36) || (_Var14 < p_Var36[1]._M_color))" ( (binary_expression "(p_Var3 == (_Rb_tree_header *)p_Var36) || (_Var14 < p_Var36[1]._M_color)" (parenthesized_expression "(p_Var3 == (_Rb_tree_header *)p_Var36)" ( (binary_expression "p_Var3 == (_Rb_tree_header *)p_Var36" identifier == (cast_expression "(_Rb_tree_header *)p_Var36" ( (type_descriptor "_Rb_tree_header *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) || (parenthesized_expression "(_Var14 < p_Var36[1]._M_color)" ( (binary_expression "_Var14 < p_Var36[1]._M_color" identifier < (field_expression "p_Var36[1]._M_color" (subscript_expression "p_Var36[1]" identifier [ number_literal ]) . field_identifier)) ))) )) || (parenthesized_expression "(local_f8 = 0, p_Var36[1]._M_parent == (_Base_ptr)0x0)" ( (comma_expression "local_f8 = 0, p_Var36[1]._M_parent == (_Base_ptr)0x0" (assignment_expression "local_f8 = 0" identifier = number_literal) , (binary_expression "p_Var36[1]._M_parent == (_Base_ptr)0x0" (field_expression "p_Var36[1]._M_parent" (subscript_expression "p_Var36[1]" identifier [ number_literal ]) . field_identifier) == (cast_expression "(_Base_ptr)0x0" ( (type_descriptor "_Base_ptr" type_identifier) ) number_literal))) ))) )) (goto_statement "goto LAB_002c56d8;" goto statement_identifier ;))) (labeled_statement "LAB_002c509e:\n    local_98._0_1_ = (byte)uVar21;" statement_identifier : (expression_statement "local_98._0_1_ = (byte)uVar21;" (assignment_expression "local_98._0_1_ = (byte)uVar21" (field_expression "local_98._0_1_" identifier . field_identifier) = (cast_expression "(byte)uVar21" ( (type_descriptor "byte" type_identifier) ) identifier)) ;)) (expression_statement "local_d0 = (Mips_relobj<32,_false> *)&symval;" (assignment_expression "local_d0 = (Mips_relobj<32,_false> *)&symval" identifier = (binary_expression "(Mips_relobj<32,_false> *)&symval" (parenthesized_expression "(Mips_relobj<32,_false> *)" ( (comma_expression "Mips_relobj<32,_false> *" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) & identifier)) ;) (expression_statement "uVar23 = relinfo->data_shndx;" (assignment_expression "uVar23 = relinfo->data_shndx" identifier = (field_expression "relinfo->data_shndx" identifier -> field_identifier)) ;) (expression_statement "object = (_List_node_base **)(ulong)uVar23;" (assignment_expression "object = (_List_node_base **)(ulong)uVar23" identifier = (cast_expression "(_List_node_base **)(ulong)uVar23" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)uVar23" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "pMVar53 = this_00;" (assignment_expression "pMVar53 = this_00" identifier = identifier) ;) (expression_statement "bVar61 = Mips_relobj<32,_true>::is_mips16_stub_section((Mips_relobj<32,_true> *)this_00,uVar23);" (comma_expression "bVar61 = Mips_relobj<32,_true>::is_mips16_stub_section((Mips_relobj<32,_true> *)this_00,uVar23)" (assignment_expression "bVar61 = Mips_relobj<32" identifier = (binary_expression "Mips_relobj<32" identifier < number_literal)) , (binary_expression "_true>::is_mips16_stub_section((Mips_relobj<32,_true> *)this_00,uVar23)" identifier > (ERROR "::" : :) (call_expression "is_mips16_stub_section((Mips_relobj<32,_true> *)this_00,uVar23)" identifier (argument_list "((Mips_relobj<32,_true> *)this_00,uVar23)" ( (parenthesized_expression "(Mips_relobj<32,_true> *)this_00,uVar23)" ( (comma_expression "Mips_relobj<32,_true> *)this_00,uVar23" (binary_expression "Mips_relobj<32" identifier < number_literal) , (comma_expression "_true> *)this_00,uVar23" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) )) ))))) ;) if (parenthesized_expression "((!bVar61) && (uVar23 != this_00->pdr_shndx_))" ( (binary_expression "(!bVar61) && (uVar23 != this_00->pdr_shndx_)" (parenthesized_expression "(!bVar61)" ( (unary_expression "!bVar61" ! identifier) )) && (parenthesized_expression "(uVar23 != this_00->pdr_shndx_)" ( (binary_expression "uVar23 != this_00->pdr_shndx_" identifier != (field_expression "this_00->pdr_shndx_" identifier -> field_identifier)) ))) )) { if (parenthesized_expression "(gsym == (Sized_symbol<32> *)0x0)" ( (binary_expression "gsym == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) )) { (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)\n                  (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n                  super__Rb_tree_header._M_header._M_parent;" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)\n                  (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n                  super__Rb_tree_header._M_header._M_parent" identifier = (field_expression "(Mips_relobj<32,_false> *)\n                  (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n                  super__Rb_tree_header._M_header._M_parent" (field_expression "(Mips_relobj<32,_false> *)\n                  (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n                  super__Rb_tree_header._M_header" (field_expression "(Mips_relobj<32,_false> *)\n                  (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n                  super__Rb_tree_header" (field_expression "(Mips_relobj<32,_false> *)\n                  (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl" (call_expression "(Mips_relobj<32,_false> *)\n                  (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)" (parenthesized_expression "(Mips_relobj<32,_false> *)" ( (comma_expression "Mips_relobj<32,_false> *" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)" ( (field_expression "((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t" (parenthesized_expression "((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)" ( (cast_expression "(Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_" ( (type_descriptor "Mips16_stubs_int_map *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->local_mips16_fn_stubs_" & (field_expression "this_00->local_mips16_fn_stubs_" identifier -> field_identifier))) )) -> field_identifier) ))) . field_identifier) . field_identifier) . field_identifier) . field_identifier)) ;) (expression_statement "pMVar42 = (Mips_relobj<32,_false> *)\n                  &(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n                   super__Rb_tree_header;" (assignment_expression "pMVar42 = (Mips_relobj<32,_false> *)\n                  &(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n                   super__Rb_tree_header" identifier = (binary_expression "(Mips_relobj<32,_false> *)\n                  &(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n                   super__Rb_tree_header" (parenthesized_expression "(Mips_relobj<32,_false> *)" ( (comma_expression "Mips_relobj<32,_false> *" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) & (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.\n                   super__Rb_tree_header" (field_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl" (parenthesized_expression "(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)" ( (field_expression "((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t" (parenthesized_expression "((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)" ( (cast_expression "(Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_" ( (type_descriptor "Mips16_stubs_int_map *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&this_00->local_mips16_fn_stubs_" & (field_expression "this_00->local_mips16_fn_stubs_" identifier -> field_identifier))) )) -> field_identifier) )) . field_identifier) . field_identifier))) ;) (expression_statement "pMVar35 = pMVar42;" (assignment_expression "pMVar35 = pMVar42" identifier = identifier) ;) (if_statement "if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c64ab;" if (parenthesized_expression "(pMVar53 == (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar53 == (Mips_relobj<32,_false> *)0x0)" identifier == (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (goto_statement "goto LAB_002c64ab;" goto statement_identifier ;)) do { (expression_statement "pMVar32 = pMVar53;" (assignment_expression "pMVar32 = pMVar53" identifier = identifier) ;) if (parenthesized_expression "(*(_Rb_tree_color *)\n               ((long)&(((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_.field_2 + 8) < _Var14)" ( (pointer_expression "*(_Rb_tree_color *)\n               ((long)&(((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_.field_2 + 8) < _Var14)" * (cast_expression "(_Rb_tree_color *)\n               ((long)&(((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_.field_2 + 8) < _Var14)" ( (type_descriptor "_Rb_tree_color *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_.field_2 + 8) < _Var14)" ( (binary_expression "(long)&(((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_.field_2 + 8) < _Var14" (cast_expression "(long)&(((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_.field_2 + 8)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_.field_2 + 8)" & (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_.field_2 + 8)" ( (binary_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_.field_2 + 8" (field_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_.field_2" (field_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_" (field_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )" ( (comma_expression "Sized_relobj<32,_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar32->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar32->super_Sized_relobj_file<32,_false" (binary_expression "pMVar32->super_Sized_relobj_file<32" (field_expression "pMVar32->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) + number_literal) )))) < identifier) )))) )) { identifier = ( (binary_expression "Mips_relobj<32" identifier < number_literal) , identifier > * (ERROR ")" )) ( (ERROR "((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj).super_Object.name_.field_2._M_allocated_capacity;\n            pMVar32 = pMVar35;\n          }\n          else" (field_expression "((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj).super_Object.name_.field_2._M_allocated_capacity" (field_expression "((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj).super_Object.name_.field_2" (field_expression "((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj).super_Object.name_" (field_expression "((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar32->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar32->super_Sized_relobj_file<32,_false" (binary_expression "pMVar32->super_Sized_relobj_file<32" (field_expression "pMVar32->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) . field_identifier) ; identifier = identifier ; } else) { identifier = ( (binary_expression "Mips_relobj<32" identifier < number_literal) , identifier > * (ERROR ")" )) ( (ERROR "((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj).super_Object.name_._M_string_length;\n          }\n          pMVar35 = pMVar32;\n          if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)&gsym[1].super_Symbol.name_ == '\0') {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2d5f,"relocate");\n      }\n      iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n      if (iVar25 == -1) {\n        pMVar53 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_;\n        goto LAB_002c64ab;\n      }" (call_expression "((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj).super_Object.name_._M_string_length;\n          }\n          pMVar35 = pMVar32;\n          if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)&gsym[1].super_Symbol.name_ == '\0')" (call_expression "((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj).super_Object.name_._M_string_length;\n          }\n          pMVar35 = pMVar32;\n          if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c6490;\n        } while( true )" (field_expression "((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj).super_Object.name_._M_string_length" (field_expression "((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj).super_Object.name_" (field_expression "((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                      ->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar32->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar32->super_Sized_relobj_file<32,_false" (binary_expression "pMVar32->super_Sized_relobj_file<32" (field_expression "pMVar32->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) (ERROR ";\n          }\n          pMVar35 = pMVar32;\n          if" ; } identifier = identifier ; if) (argument_list "(pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c6490;\n        } while( true )" ( (binary_expression "pMVar53 == (Mips_relobj<32,_false> *)0x0)" identifier == (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) (ERROR "goto LAB_002c6490;\n        } while( true" identifier identifier ; } while ( true) ))) (ERROR ";\n      }\n      if" ; } if) (argument_list "(*(char *)&gsym[1].super_Symbol.name_ == '\0')" ( (binary_expression "*(char *)&gsym[1].super_Symbol.name_ == '\0'" (pointer_expression "*(char *)&gsym[1].super_Symbol.name_" * (cast_expression "(char *)&gsym[1].super_Symbol.name_" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&gsym[1].super_Symbol.name_" & (field_expression "gsym[1].super_Symbol.name_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier)))) == (char_literal "'\0'" ' escape_sequence ')) ))) { comment identifier : : (call_expression "do_gold_unreachable("../../gold/mips.cc",0x2d5f,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2d5f,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ; } (call_expression "iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n      if (iVar25 == -1)" (assignment_expression "iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4)" identifier = (pointer_expression "*(int *)((long)&gsym[1].super_Symbol.name_ + 4)" * (cast_expression "(int *)((long)&gsym[1].super_Symbol.name_ + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&gsym[1].super_Symbol.name_ + 4)" ( (binary_expression "(long)&gsym[1].super_Symbol.name_ + 4" (cast_expression "(long)&gsym[1].super_Symbol.name_" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&gsym[1].super_Symbol.name_" & (field_expression "gsym[1].super_Symbol.name_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) + number_literal) ))))) (ERROR ";\n      if" ; if) (argument_list "(iVar25 == -1)" ( (binary_expression "iVar25 == -1" identifier == number_literal) ))) (compound_statement "{\n        pMVar53 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_;\n        goto LAB_002c64ab;\n      }" { (expression_statement "pMVar53 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_;" (assignment_expression "pMVar53 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_" identifier = (binary_expression "*(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_" (pointer_expression "*(Mips_relobj<32,_false> **)" * (parenthesized_expression "(Mips_relobj<32,_false> **)" ( (comma_expression "Mips_relobj<32,_false> **" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) ))) & (field_expression "gsym[1].super_Symbol.got_offsets_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) ;) (goto_statement "goto LAB_002c64ab;" goto statement_identifier ;) })) (assignment_expression "pMVar8 = target->la25_stub_" identifier = (field_expression "target->la25_stub_" identifier -> field_identifier)) (ERROR ";\n      if" ; if) ( (ERROR "pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0)" (binary_expression "pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0)" identifier != (parenthesized_expression "(Mips_output_data_la25_stub<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_la25_stub<32,_true> *)0x0" (binary_expression "Mips_output_data_la25_stub<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )))) { (expression_statement "bVar18 = (pMVar8->super_Output_section_data).super_Output_data.field_0x20;" (assignment_expression "bVar18 = (pMVar8->super_Output_section_data).super_Output_data.field_0x20" identifier = (field_expression "(pMVar8->super_Output_section_data).super_Output_data.field_0x20" (field_expression "(pMVar8->super_Output_section_data).super_Output_data" (parenthesized_expression "(pMVar8->super_Output_section_data)" ( (field_expression "pMVar8->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier)) ;) (expression_statement "uVar49 = bVar18 & 1;" (assignment_expression "uVar49 = bVar18 & 1" identifier = (binary_expression "bVar18 & 1" identifier & number_literal)) ;) (expression_statement "object = (_List_node_base **)(ulong)uVar49;" (assignment_expression "object = (_List_node_base **)(ulong)uVar49" identifier = (cast_expression "(_List_node_base **)(ulong)uVar49" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)uVar49" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "local_e1 = SUB41(uVar49,0);" (assignment_expression "local_e1 = SUB41(uVar49,0)" identifier = (call_expression "SUB41(uVar49,0)" identifier (argument_list "(uVar49,0)" ( identifier , number_literal )))) ;) (if_statement "if ((bVar18 & 1) != 0) {\n          bVar62 = uVar60 == 100;\n          symval.u_.value =\n               iVar25 + (int)(pMVar8->super_Output_section_data).super_Output_data.address_;\n          bVar18 = 0;\n          bVar61 = bVar62;\n          if ((uVar60 & 0xf7) != 0x85) goto LAB_002c64da;\n          psymval = (Symbol_value<32> *)local_d0;\n          goto LAB_002c5150;\n        }" if (parenthesized_expression "((bVar18 & 1) != 0)" ( (binary_expression "(bVar18 & 1) != 0" (parenthesized_expression "(bVar18 & 1)" ( (binary_expression "bVar18 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n          bVar62 = uVar60 == 100;\n          symval.u_.value =\n               iVar25 + (int)(pMVar8->super_Output_section_data).super_Output_data.address_;\n          bVar18 = 0;\n          bVar61 = bVar62;\n          if ((uVar60 & 0xf7) != 0x85) goto LAB_002c64da;\n          psymval = (Symbol_value<32> *)local_d0;\n          goto LAB_002c5150;\n        }" { (expression_statement "bVar62 = uVar60 == 100;" (assignment_expression "bVar62 = uVar60 == 100" identifier = (binary_expression "uVar60 == 100" identifier == number_literal)) ;) (expression_statement "symval.u_.value =\n               iVar25 + (int)(pMVar8->super_Output_section_data).super_Output_data.address_;" (assignment_expression "symval.u_.value =\n               iVar25 + (int)(pMVar8->super_Output_section_data).super_Output_data.address_" (field_expression "symval.u_.value" (field_expression "symval.u_" identifier . field_identifier) . field_identifier) = (binary_expression "iVar25 + (int)(pMVar8->super_Output_section_data).super_Output_data.address_" identifier + (cast_expression "(int)(pMVar8->super_Output_section_data).super_Output_data.address_" ( (type_descriptor "int" primitive_type) ) (field_expression "(pMVar8->super_Output_section_data).super_Output_data.address_" (field_expression "(pMVar8->super_Output_section_data).super_Output_data" (parenthesized_expression "(pMVar8->super_Output_section_data)" ( (field_expression "pMVar8->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier)))) ;) (expression_statement "bVar18 = 0;" (assignment_expression "bVar18 = 0" identifier = number_literal) ;) (expression_statement "bVar61 = bVar62;" (assignment_expression "bVar61 = bVar62" identifier = identifier) ;) (if_statement "if ((uVar60 & 0xf7) != 0x85) goto LAB_002c64da;" if (parenthesized_expression "((uVar60 & 0xf7) != 0x85)" ( (binary_expression "(uVar60 & 0xf7) != 0x85" (parenthesized_expression "(uVar60 & 0xf7)" ( (binary_expression "uVar60 & 0xf7" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_002c64da;" goto statement_identifier ;)) (expression_statement "psymval = (Symbol_value<32> *)local_d0;" (assignment_expression "psymval = (Symbol_value<32> *)local_d0" identifier = (parenthesized_expression "(Symbol_value<32> *)local_d0" ( (binary_expression "Symbol_value<32> *)local_d0" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)local_d0" * (ERROR ")" )) identifier)) ))) ;) (goto_statement "goto LAB_002c5150;" goto statement_identifier ;) })) comment (binary_expression "Mips_output_data_plt<64" identifier < number_literal) , identifier > (ERROR "::" : :) identifier ( ( (ERROR "Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n      }" (comma_expression "Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object)" (binary_expression "Mips_output_data_plt<64" identifier < number_literal) , (comma_expression "_false> *)pMVar53,(Mips_symbol<64> *)object)" (binary_expression "_false> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (parenthesized_expression "(Mips_symbol<64> *)object)" ( (binary_expression "Mips_symbol<64> *)object" (binary_expression "Mips_symbol<64" identifier < number_literal) > (pointer_expression "*)object" * (ERROR ")" )) identifier)) )))) ; }) identifier ( (ERROR "(Target_mips<32,_true> *)pMVar53);\n      pMVar45 = extraout_RDX_03;\n      goto" (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ; (assignment_expression "pMVar45 = extraout_RDX_03" identifier = identifier) ; goto) identifier (ERROR ";\n    }\n    if" ; } if) ( (ERROR "gsym == (Sized_symbol<32> *)0x0) {\nLAB_002c56df:\n      bVar61 = uVar60 == 100;\n      goto LAB_002c4e20;\n    }\n  }\n  else" (binary_expression "gsym == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) (compound_statement "{\nLAB_002c56df:\n      bVar61 = uVar60 == 100;\n      goto LAB_002c4e20;\n    }" { (labeled_statement "LAB_002c56df:\n      bVar61 = uVar60 == 100;" statement_identifier : (expression_statement "bVar61 = uVar60 == 100;" (assignment_expression "bVar61 = uVar60 == 100" identifier = (binary_expression "uVar60 == 100" identifier == number_literal)) ;)) (goto_statement "goto LAB_002c4e20;" goto statement_identifier ;) }) } else) { (expression_statement "bVar17 = (byte)(gsym->super_Symbol).field_0x39 >> 2;" (assignment_expression "bVar17 = (byte)(gsym->super_Symbol).field_0x39 >> 2" identifier = (binary_expression "(byte)(gsym->super_Symbol).field_0x39 >> 2" (field_expression "(byte)(gsym->super_Symbol).field_0x39" (call_expression "(byte)(gsym->super_Symbol)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) ))) . field_identifier) >> number_literal)) ;) (expression_statement "bVar61 = (bVar17 & 0x3c) == 0x3c;" (assignment_expression "bVar61 = (bVar17 & 0x3c) == 0x3c" identifier = (binary_expression "(bVar17 & 0x3c) == 0x3c" (parenthesized_expression "(bVar17 & 0x3c)" ( (binary_expression "bVar17 & 0x3c" identifier & number_literal) )) == number_literal)) ;) (expression_statement "puVar58 = (uint *)(ulong)bVar61;" (assignment_expression "puVar58 = (uint *)(ulong)bVar61" identifier = (cast_expression "(uint *)(ulong)bVar61" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)bVar61" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "bVar62 = (bVar17 & 0x30) == 0x20;" (assignment_expression "bVar62 = (bVar17 & 0x30) == 0x20" identifier = (binary_expression "(bVar17 & 0x30) == 0x20" (parenthesized_expression "(bVar17 & 0x30)" ( (binary_expression "bVar17 & 0x30" identifier & number_literal) )) == number_literal)) ;) (expression_statement "uVar21 = (uint)bVar62;" (assignment_expression "uVar21 = (uint)bVar62" identifier = (cast_expression "(uint)bVar62" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_e1 = bVar62 || bVar61;" (assignment_expression "local_e1 = bVar62 || bVar61" identifier = (binary_expression "bVar62 || bVar61" identifier || identifier)) ;) (expression_statement "sVar56 = relnum;" (assignment_expression "sVar56 = relnum" identifier = identifier) ;) (if_statement "if ((bVar62 || bVar61) &&\n       (VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0), VVar20 != 0)) {\n      VVar20 = gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,0)\n      ;\n      symval.u_.value = VVar20 | 1;\n      psymval = &symval;\n    }\n    else {\n      local_e1 = false;\n    }" if (parenthesized_expression "((bVar62 || bVar61) &&\n       (VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0), VVar20 != 0))" ( (binary_expression "(bVar62 || bVar61) &&\n       (VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0), VVar20 != 0))" (parenthesized_expression "(bVar62 || bVar61)" ( (binary_expression "bVar62 || bVar61" identifier || identifier) )) && (parenthesized_expression "(VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0), VVar20 != 0))" ( (binary_expression "VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0), VVar20 != 0)" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true" (binary_expression "VVar20 = gold::Symbol_value<32>::value" (binary_expression "VVar20 = gold::Symbol_value<32" (assignment_expression "VVar20 = gold" identifier = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,0), VVar20 != 0)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,0), VVar20 != 0" identifier , (comma_expression "(Sized_relobj_file<32,_true> *)this_00,0), VVar20 != 0" (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , number_literal)) )) , (binary_expression "VVar20 != 0" identifier != number_literal))) ))) ))) )) (compound_statement "{\n      VVar20 = gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,0)\n      ;\n      symval.u_.value = VVar20 | 1;\n      psymval = &symval;\n    }" { (expression_statement "VVar20 = gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,0)\n      ;" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,0)" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true" (binary_expression "VVar20 = gold::Symbol_value<32>::value" (binary_expression "VVar20 = gold::Symbol_value<32" (assignment_expression "VVar20 = gold" identifier = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,0)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , number_literal)) ))) ))) ;) (expression_statement "symval.u_.value = VVar20 | 1;" (assignment_expression "symval.u_.value = VVar20 | 1" (field_expression "symval.u_.value" (field_expression "symval.u_" identifier . field_identifier) . field_identifier) = (binary_expression "VVar20 | 1" identifier | number_literal)) ;) (expression_statement "psymval = &symval;" (assignment_expression "psymval = &symval" identifier = (pointer_expression "&symval" & identifier)) ;) }) (else_clause "else {\n      local_e1 = false;\n    }" else (compound_statement "{\n      local_e1 = false;\n    }" { (expression_statement "local_e1 = false;" (assignment_expression "local_e1 = false" identifier = false) ;) }))) (expression_statement "local_d0 = (Mips_relobj<32,_false> *)&symval;" (assignment_expression "local_d0 = (Mips_relobj<32,_false> *)&symval" identifier = (binary_expression "(Mips_relobj<32,_false> *)&symval" (parenthesized_expression "(Mips_relobj<32,_false> *)" ( (comma_expression "Mips_relobj<32,_false> *" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) & identifier)) ;) (expression_statement "sym = (Mips_symbol<64> *)0x0;" (assignment_expression "sym = (Mips_symbol<64> *)0x0" identifier = (parenthesized_expression "(Mips_symbol<64> *)0x0" ( (binary_expression "Mips_symbol<64> *)0x0" (binary_expression "Mips_symbol<64" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) ;) (if_statement "if (uVar60 - 1 < 0xf9) {\n      sym = (Mips_symbol<64> *)(ulong)(uint)(int)(char)CSWTCH_4890[uVar60 - 1];\n    }" if (parenthesized_expression "(uVar60 - 1 < 0xf9)" ( (binary_expression "uVar60 - 1 < 0xf9" (binary_expression "uVar60 - 1" identifier - number_literal) < number_literal) )) (compound_statement "{\n      sym = (Mips_symbol<64> *)(ulong)(uint)(int)(char)CSWTCH_4890[uVar60 - 1];\n    }" { (expression_statement "sym = (Mips_symbol<64> *)(ulong)(uint)(int)(char)" (assignment_expression "sym = (Mips_symbol<64> *)(ulong)(uint)(int)(char)" identifier = (call_expression "(Mips_symbol<64> *)(ulong)(uint)(int)(char)" (call_expression "(Mips_symbol<64> *)(ulong)(uint)(int)" (call_expression "(Mips_symbol<64> *)(ulong)(uint)" (call_expression "(Mips_symbol<64> *)(ulong)" (parenthesized_expression "(Mips_symbol<64> *)" ( (binary_expression "Mips_symbol<64> *" (binary_expression "Mips_symbol<64" identifier < number_literal) > (pointer_expression "*" * identifier)) )) (argument_list "(ulong)" ( identifier ))) (argument_list "(uint)" ( identifier ))) (argument_list "(int)" ( identifier ))) (argument_list "(char)" ( identifier )))) ;) (expression_statement "CSWTCH_4890[uVar60 - 1];" (subscript_expression "CSWTCH_4890[uVar60 - 1]" identifier [ (binary_expression "uVar60 - 1" identifier - number_literal) ]) ;) })) (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)gsym;" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)gsym" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)gsym" ( (comma_expression "Mips_relobj<32,_false> *)gsym" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)gsym" identifier > (pointer_expression "*)gsym" * (ERROR ")" )) identifier))) ))) ;) comment (ERROR "bVar61 = gold::" (assignment_expression "bVar61 = gold" identifier = identifier) : :) (labeled_statement "Symbol::use_plt_offset(&gsym->super_Symbol,(int)sym);" statement_identifier : (ERROR ":" :) (expression_statement "use_plt_offset(&gsym->super_Symbol,(int)sym);" (call_expression "use_plt_offset(&gsym->super_Symbol,(int)sym)" identifier (argument_list "(&gsym->super_Symbol,(int)sym)" ( (pointer_expression "&gsym->super_Symbol" & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) , (cast_expression "(int)sym" ( (type_descriptor "int" primitive_type) ) identifier) ))) ;)) (expression_statement "cVar47 = *(char *)((long)&gsym[1].super_Symbol.symtab_index_ + 1);" (assignment_expression "cVar47 = *(char *)((long)&gsym[1].super_Symbol.symtab_index_ + 1)" identifier = (pointer_expression "*(char *)((long)&gsym[1].super_Symbol.symtab_index_ + 1)" * (cast_expression "(char *)((long)&gsym[1].super_Symbol.symtab_index_ + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&gsym[1].super_Symbol.symtab_index_ + 1)" ( (binary_expression "(long)&gsym[1].super_Symbol.symtab_index_ + 1" (cast_expression "(long)&gsym[1].super_Symbol.symtab_index_" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&gsym[1].super_Symbol.symtab_index_" & (field_expression "gsym[1].super_Symbol.symtab_index_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) + number_literal) ))))) ;) (if_statement "if (bVar61) {\n      if (cVar47 != '\0') goto LAB_002c4c60;\n      uVar21 = gsym[1].super_Symbol.dynsym_index_;\n      pMVar7 = target->plt_;\n      if (uVar21 == 0xffffffff) {\n        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c8217:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\n          goto LAB_002c821c;\n        }\n        uVar21 = gsym[1].super_Symbol.plt_offset_;\n        if (uVar21 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }\n        bVar17 = target->field_0x14;\n        VVar20 = uVar21 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n                 pMVar7->plt0_entry_o32[2];\n        if (bVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          is_output_micromips((Target_mips<32,_true> *)pMVar53);\n        }\n        bVar61 = false;\n        bVar63 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n        if (bVar63) {\n          puVar58 = (uint *)(ulong)bVar17;\n          bVar17 = bVar62;\n        }\n        uVar21 = (uint)bVar17;\n      }\n      else {\n        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) goto LAB_002c81eb;\n        if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }\n        uVar21 = uVar21 + pMVar7->plt0_entry_o32[2];\n        puVar58 = (uint *)0x0;\n        bVar61 = CARRY4(uVar21,pMVar7->plt_header_size_);\n        VVar20 = uVar21 + pMVar7->plt_header_size_;\n        bVar63 = VVar20 == 0;\n        uVar21 = 0;\n      }\nLAB_002c4c88:\n      symval.u_.value = VVar20;\n      psymval = (Symbol_value<32> *)local_d0;\n    }\n    else {\n      bVar61 = false;\n      bVar63 = cVar47 == '\0';\n      if (!bVar63) {\nLAB_002c4c60:\n        pMVar6 = target->mips_stubs_;\n        if (pMVar6 == (Mips_output_data_mips_stubs<32,_true> *)0x0) {\n          mips_stubs_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81eb:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f0:\n          Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if (((pMVar6->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym);\n        }\n        uVar23 = *(uint *)((long)&gsym[1].super_Symbol.version_ + 4);\n        puVar1 = &(pMVar6->super_Output_section_data).super_Output_data.address_;\n        bVar61 = CARRY4(uVar23,(uint)*puVar1);\n        VVar20 = uVar23 + (int)*puVar1;\n        bVar63 = VVar20 == 0;\n        goto LAB_002c4c88;\n      }\n    }" if (parenthesized_expression "(bVar61)" ( identifier )) (compound_statement "{\n      if (cVar47 != '\0') goto LAB_002c4c60;\n      uVar21 = gsym[1].super_Symbol.dynsym_index_;\n      pMVar7 = target->plt_;\n      if (uVar21 == 0xffffffff) {\n        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c8217:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\n          goto LAB_002c821c;\n        }\n        uVar21 = gsym[1].super_Symbol.plt_offset_;\n        if (uVar21 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }\n        bVar17 = target->field_0x14;\n        VVar20 = uVar21 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n                 pMVar7->plt0_entry_o32[2];\n        if (bVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          is_output_micromips((Target_mips<32,_true> *)pMVar53);\n        }\n        bVar61 = false;\n        bVar63 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n        if (bVar63) {\n          puVar58 = (uint *)(ulong)bVar17;\n          bVar17 = bVar62;\n        }\n        uVar21 = (uint)bVar17;\n      }\n      else {\n        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) goto LAB_002c81eb;\n        if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }\n        uVar21 = uVar21 + pMVar7->plt0_entry_o32[2];\n        puVar58 = (uint *)0x0;\n        bVar61 = CARRY4(uVar21,pMVar7->plt_header_size_);\n        VVar20 = uVar21 + pMVar7->plt_header_size_;\n        bVar63 = VVar20 == 0;\n        uVar21 = 0;\n      }\nLAB_002c4c88:\n      symval.u_.value = VVar20;\n      psymval = (Symbol_value<32> *)local_d0;\n    }" { (if_statement "if (cVar47 != '\0') goto LAB_002c4c60;" if (parenthesized_expression "(cVar47 != '\0')" ( (binary_expression "cVar47 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c4c60;" goto statement_identifier ;)) (expression_statement "uVar21 = gsym[1].super_Symbol.dynsym_index_;" (assignment_expression "uVar21 = gsym[1].super_Symbol.dynsym_index_" identifier = (field_expression "gsym[1].super_Symbol.dynsym_index_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier)) ;) (expression_statement "pMVar7 = target->plt_;" (assignment_expression "pMVar7 = target->plt_" identifier = (field_expression "target->plt_" identifier -> field_identifier)) ;) (if_statement "if (uVar21 == 0xffffffff) {\n        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c8217:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\n          goto LAB_002c821c;\n        }\n        uVar21 = gsym[1].super_Symbol.plt_offset_;\n        if (uVar21 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }\n        bVar17 = target->field_0x14;\n        VVar20 = uVar21 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n                 pMVar7->plt0_entry_o32[2];\n        if (bVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          is_output_micromips((Target_mips<32,_true> *)pMVar53);\n        }\n        bVar61 = false;\n        bVar63 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n        if (bVar63) {\n          puVar58 = (uint *)(ulong)bVar17;\n          bVar17 = bVar62;\n        }\n        uVar21 = (uint)bVar17;\n      }\n      else {\n        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) goto LAB_002c81eb;\n        if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }\n        uVar21 = uVar21 + pMVar7->plt0_entry_o32[2];\n        puVar58 = (uint *)0x0;\n        bVar61 = CARRY4(uVar21,pMVar7->plt_header_size_);\n        VVar20 = uVar21 + pMVar7->plt_header_size_;\n        bVar63 = VVar20 == 0;\n        uVar21 = 0;\n      }" if (parenthesized_expression "(uVar21 == 0xffffffff)" ( (binary_expression "uVar21 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c8217:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\n          goto LAB_002c821c;\n        }\n        uVar21 = gsym[1].super_Symbol.plt_offset_;\n        if (uVar21 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }\n        bVar17 = target->field_0x14;\n        VVar20 = uVar21 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n                 pMVar7->plt0_entry_o32[2];\n        if (bVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          is_output_micromips((Target_mips<32,_true> *)pMVar53);\n        }\n        bVar61 = false;\n        bVar63 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n        if (bVar63) {\n          puVar58 = (uint *)(ulong)bVar17;\n          bVar17 = bVar62;\n        }\n        uVar21 = (uint)bVar17;\n      }" { (if_statement "if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c8217:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\n          goto LAB_002c821c;\n        }" if (parenthesized_expression "(pMVar7 == (Mips_output_data_plt<32,_true> *)0x0)" ( (binary_expression "pMVar7 == (Mips_output_data_plt<32,_true> *)0x0)" identifier == (parenthesized_expression "(Mips_output_data_plt<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_plt<32,_true> *)0x0" (binary_expression "Mips_output_data_plt<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\nLAB_002c8217:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\n          goto LAB_002c821c;\n        }" { (labeled_statement "LAB_002c8217:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);" statement_identifier : (expression_statement "Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);" (comma_expression "Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::plt_section((Target_mips<32,_true> *)pMVar53)" identifier > (ERROR "::" : :) (call_expression "plt_section((Target_mips<32,_true> *)pMVar53)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53)" ( (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ))))) ;)) (goto_statement "goto LAB_002c821c;" goto statement_identifier ;) })) (expression_statement "uVar21 = gsym[1].super_Symbol.plt_offset_;" (assignment_expression "uVar21 = gsym[1].super_Symbol.plt_offset_" identifier = (field_expression "gsym[1].super_Symbol.plt_offset_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier)) ;) (if_statement "if (uVar21 == 0xffffffff) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }" if (parenthesized_expression "(uVar21 == 0xffffffff)" ( (binary_expression "uVar21 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/mips.cc",0x9ed,"comp_entry_address");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/mips.cc",0x9ed,"comp_entry_address");" (call_expression "do_gold_unreachable("../../gold/mips.cc",0x9ed,"comp_entry_address")" identifier (argument_list "("../../gold/mips.cc",0x9ed,"comp_entry_address")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""comp_entry_address"" " string_content ") ))) ;)) })) (if_statement "if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }" if (parenthesized_expression "((pMVar7->field_0x20 & 1) == 0)" ( (binary_expression "(pMVar7->field_0x20 & 1) == 0" (parenthesized_expression "(pMVar7->field_0x20 & 1)" ( (binary_expression "pMVar7->field_0x20 & 1" (field_expression "pMVar7->field_0x20" identifier -> field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }" { comment (expression_statement "Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);" (comma_expression "Mips_output_data_plt<64,_false>::mips_entry_address" (binary_expression "Mips_output_data_plt<64" identifier < number_literal) , (binary_expression "_false>::mips_entry_address" identifier > (ERROR "::" : :) identifier)) (ERROR "((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target)" ( ( (comma_expression "Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target)" (binary_expression "Mips_output_data_plt<64" identifier < number_literal) , (comma_expression "_false> *)pMVar53,(Mips_symbol<64> *)target)" (binary_expression "_false> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (parenthesized_expression "(Mips_symbol<64> *)target)" ( (binary_expression "Mips_symbol<64> *)target" (binary_expression "Mips_symbol<64" identifier < number_literal) > (pointer_expression "*)target" * (ERROR ")" )) identifier)) ))))) ;) })) (expression_statement "bVar17 = target->field_0x14;" (assignment_expression "bVar17 = target->field_0x14" identifier = (field_expression "target->field_0x14" identifier -> field_identifier)) ;) (expression_statement "VVar20 = uVar21 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n                 pMVar7->plt0_entry_o32[2];" (assignment_expression "VVar20 = uVar21 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n                 pMVar7->plt0_entry_o32[2]" identifier = (binary_expression "uVar21 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n                 pMVar7->plt0_entry_o32[2]" (binary_expression "uVar21 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_" (binary_expression "uVar21 + 1 + pMVar7->plt_header_size_" (binary_expression "uVar21 + 1" identifier + number_literal) + (field_expression "pMVar7->plt_header_size_" identifier -> field_identifier)) + (field_expression "pMVar7->plt_mips_offset_" identifier -> field_identifier)) + (subscript_expression "pMVar7->plt0_entry_o32[2]" (field_expression "pMVar7->plt0_entry_o32" identifier -> field_identifier) [ number_literal ]))) ;) (if_statement "if (bVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          is_output_micromips((Target_mips<32,_true> *)pMVar53);\n        }" if (parenthesized_expression "(bVar17 == 0)" ( (binary_expression "bVar17 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          is_output_micromips((Target_mips<32,_true> *)pMVar53);\n        }" { comment (expression_statement "is_output_micromips((Target_mips<32,_true> *)pMVar53);" (call_expression "is_output_micromips((Target_mips<32,_true> *)pMVar53)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53)" ( (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ))) ;) })) (expression_statement "bVar61 = false;" (assignment_expression "bVar61 = false" identifier = false) ;) (expression_statement "bVar63 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;" (assignment_expression "bVar63 = (*(uint *)&target->field_0x10 & 0x2000000) == 0" identifier = (binary_expression "(*(uint *)&target->field_0x10 & 0x2000000) == 0" (parenthesized_expression "(*(uint *)&target->field_0x10 & 0x2000000)" ( (binary_expression "*(uint *)&target->field_0x10 & 0x2000000" (pointer_expression "*(uint *)&target->field_0x10" * (cast_expression "(uint *)&target->field_0x10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&target->field_0x10" & (field_expression "target->field_0x10" identifier -> field_identifier)))) & number_literal) )) == number_literal)) ;) (if_statement "if (bVar63) {\n          puVar58 = (uint *)(ulong)bVar17;\n          bVar17 = bVar62;\n        }" if (parenthesized_expression "(bVar63)" ( identifier )) (compound_statement "{\n          puVar58 = (uint *)(ulong)bVar17;\n          bVar17 = bVar62;\n        }" { (expression_statement "puVar58 = (uint *)(ulong)bVar17;" (assignment_expression "puVar58 = (uint *)(ulong)bVar17" identifier = (cast_expression "(uint *)(ulong)bVar17" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)bVar17" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "bVar17 = bVar62;" (assignment_expression "bVar17 = bVar62" identifier = identifier) ;) })) (expression_statement "uVar21 = (uint)bVar17;" (assignment_expression "uVar21 = (uint)bVar17" identifier = (cast_expression "(uint)bVar17" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) }) (else_clause "else {\n        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) goto LAB_002c81eb;\n        if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }\n        uVar21 = uVar21 + pMVar7->plt0_entry_o32[2];\n        puVar58 = (uint *)0x0;\n        bVar61 = CARRY4(uVar21,pMVar7->plt_header_size_);\n        VVar20 = uVar21 + pMVar7->plt_header_size_;\n        bVar63 = VVar20 == 0;\n        uVar21 = 0;\n      }" else (compound_statement "{\n        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) goto LAB_002c81eb;\n        if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }\n        uVar21 = uVar21 + pMVar7->plt0_entry_o32[2];\n        puVar58 = (uint *)0x0;\n        bVar61 = CARRY4(uVar21,pMVar7->plt_header_size_);\n        VVar20 = uVar21 + pMVar7->plt_header_size_;\n        bVar63 = VVar20 == 0;\n        uVar21 = 0;\n      }" { (if_statement "if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) goto LAB_002c81eb;" if (parenthesized_expression "(pMVar7 == (Mips_output_data_plt<32,_true> *)0x0)" ( (binary_expression "pMVar7 == (Mips_output_data_plt<32,_true> *)0x0)" identifier == (parenthesized_expression "(Mips_output_data_plt<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_plt<32,_true> *)0x0" (binary_expression "Mips_output_data_plt<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (goto_statement "goto LAB_002c81eb;" goto statement_identifier ;)) (if_statement "if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }" if (parenthesized_expression "((pMVar7->field_0x20 & 1) == 0)" ( (binary_expression "(pMVar7->field_0x20 & 1) == 0" (parenthesized_expression "(pMVar7->field_0x20 & 1)" ( (binary_expression "pMVar7->field_0x20 & 1" (field_expression "pMVar7->field_0x20" identifier -> field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n        }" { comment (expression_statement "Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);" (comma_expression "Mips_output_data_plt<64,_false>::mips_entry_address" (binary_expression "Mips_output_data_plt<64" identifier < number_literal) , (binary_expression "_false>::mips_entry_address" identifier > (ERROR "::" : :) identifier)) (ERROR "((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target)" ( ( (comma_expression "Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target)" (binary_expression "Mips_output_data_plt<64" identifier < number_literal) , (comma_expression "_false> *)pMVar53,(Mips_symbol<64> *)target)" (binary_expression "_false> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (parenthesized_expression "(Mips_symbol<64> *)target)" ( (binary_expression "Mips_symbol<64> *)target" (binary_expression "Mips_symbol<64" identifier < number_literal) > (pointer_expression "*)target" * (ERROR ")" )) identifier)) ))))) ;) })) (expression_statement "uVar21 = uVar21 + pMVar7->plt0_entry_o32[2];" (assignment_expression "uVar21 = uVar21 + pMVar7->plt0_entry_o32[2]" identifier = (binary_expression "uVar21 + pMVar7->plt0_entry_o32[2]" identifier + (subscript_expression "pMVar7->plt0_entry_o32[2]" (field_expression "pMVar7->plt0_entry_o32" identifier -> field_identifier) [ number_literal ]))) ;) (expression_statement "puVar58 = (uint *)0x0;" (assignment_expression "puVar58 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bVar61 = CARRY4(uVar21,pMVar7->plt_header_size_);" (assignment_expression "bVar61 = CARRY4(uVar21,pMVar7->plt_header_size_)" identifier = (call_expression "CARRY4(uVar21,pMVar7->plt_header_size_)" identifier (argument_list "(uVar21,pMVar7->plt_header_size_)" ( identifier , (field_expression "pMVar7->plt_header_size_" identifier -> field_identifier) )))) ;) (expression_statement "VVar20 = uVar21 + pMVar7->plt_header_size_;" (assignment_expression "VVar20 = uVar21 + pMVar7->plt_header_size_" identifier = (binary_expression "uVar21 + pMVar7->plt_header_size_" identifier + (field_expression "pMVar7->plt_header_size_" identifier -> field_identifier))) ;) (expression_statement "bVar63 = VVar20 == 0;" (assignment_expression "bVar63 = VVar20 == 0" identifier = (binary_expression "VVar20 == 0" identifier == number_literal)) ;) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) }))) (labeled_statement "LAB_002c4c88:\n      symval.u_.value = VVar20;" statement_identifier : (expression_statement "symval.u_.value = VVar20;" (assignment_expression "symval.u_.value = VVar20" (field_expression "symval.u_.value" (field_expression "symval.u_" identifier . field_identifier) . field_identifier) = identifier) ;)) (expression_statement "psymval = (Symbol_value<32> *)local_d0;" (assignment_expression "psymval = (Symbol_value<32> *)local_d0" identifier = (parenthesized_expression "(Symbol_value<32> *)local_d0" ( (binary_expression "Symbol_value<32> *)local_d0" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)local_d0" * (ERROR ")" )) identifier)) ))) ;) }) (else_clause "else {\n      bVar61 = false;\n      bVar63 = cVar47 == '\0';\n      if (!bVar63) {\nLAB_002c4c60:\n        pMVar6 = target->mips_stubs_;\n        if (pMVar6 == (Mips_output_data_mips_stubs<32,_true> *)0x0) {\n          mips_stubs_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81eb:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f0:\n          Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if (((pMVar6->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym);\n        }\n        uVar23 = *(uint *)((long)&gsym[1].super_Symbol.version_ + 4);\n        puVar1 = &(pMVar6->super_Output_section_data).super_Output_data.address_;\n        bVar61 = CARRY4(uVar23,(uint)*puVar1);\n        VVar20 = uVar23 + (int)*puVar1;\n        bVar63 = VVar20 == 0;\n        goto LAB_002c4c88;\n      }\n    }" else (compound_statement "{\n      bVar61 = false;\n      bVar63 = cVar47 == '\0';\n      if (!bVar63) {\nLAB_002c4c60:\n        pMVar6 = target->mips_stubs_;\n        if (pMVar6 == (Mips_output_data_mips_stubs<32,_true> *)0x0) {\n          mips_stubs_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81eb:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f0:\n          Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if (((pMVar6->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym);\n        }\n        uVar23 = *(uint *)((long)&gsym[1].super_Symbol.version_ + 4);\n        puVar1 = &(pMVar6->super_Output_section_data).super_Output_data.address_;\n        bVar61 = CARRY4(uVar23,(uint)*puVar1);\n        VVar20 = uVar23 + (int)*puVar1;\n        bVar63 = VVar20 == 0;\n        goto LAB_002c4c88;\n      }\n    }" { (expression_statement "bVar61 = false;" (assignment_expression "bVar61 = false" identifier = false) ;) (expression_statement "bVar63 = cVar47 == '\0';" (assignment_expression "bVar63 = cVar47 == '\0'" identifier = (binary_expression "cVar47 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence '))) ;) (if_statement "if (!bVar63) {\nLAB_002c4c60:\n        pMVar6 = target->mips_stubs_;\n        if (pMVar6 == (Mips_output_data_mips_stubs<32,_true> *)0x0) {\n          mips_stubs_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81eb:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f0:\n          Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if (((pMVar6->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym);\n        }\n        uVar23 = *(uint *)((long)&gsym[1].super_Symbol.version_ + 4);\n        puVar1 = &(pMVar6->super_Output_section_data).super_Output_data.address_;\n        bVar61 = CARRY4(uVar23,(uint)*puVar1);\n        VVar20 = uVar23 + (int)*puVar1;\n        bVar63 = VVar20 == 0;\n        goto LAB_002c4c88;\n      }" if (parenthesized_expression "(!bVar63)" ( (unary_expression "!bVar63" ! identifier) )) (compound_statement "{\nLAB_002c4c60:\n        pMVar6 = target->mips_stubs_;\n        if (pMVar6 == (Mips_output_data_mips_stubs<32,_true> *)0x0) {\n          mips_stubs_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81eb:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f0:\n          Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if (((pMVar6->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym);\n        }\n        uVar23 = *(uint *)((long)&gsym[1].super_Symbol.version_ + 4);\n        puVar1 = &(pMVar6->super_Output_section_data).super_Output_data.address_;\n        bVar61 = CARRY4(uVar23,(uint)*puVar1);\n        VVar20 = uVar23 + (int)*puVar1;\n        bVar63 = VVar20 == 0;\n        goto LAB_002c4c88;\n      }" { (labeled_statement "LAB_002c4c60:\n        pMVar6 = target->mips_stubs_;" statement_identifier : (expression_statement "pMVar6 = target->mips_stubs_;" (assignment_expression "pMVar6 = target->mips_stubs_" identifier = (field_expression "target->mips_stubs_" identifier -> field_identifier)) ;)) (if_statement "if (pMVar6 == (Mips_output_data_mips_stubs<32,_true> *)0x0) {\n          mips_stubs_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81eb:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f0:\n          Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate");\n        }" if (parenthesized_expression "(pMVar6 == (Mips_output_data_mips_stubs<32,_true> *)0x0)" ( (binary_expression "pMVar6 == (Mips_output_data_mips_stubs<32,_true> *)0x0)" identifier == (parenthesized_expression "(Mips_output_data_mips_stubs<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_mips_stubs<32,_true> *)0x0" (binary_expression "Mips_output_data_mips_stubs<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\n          mips_stubs_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81eb:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f0:\n          Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate");\n        }" { (expression_statement "mips_stubs_section((Target_mips<32,_true> *)pMVar53);" (call_expression "mips_stubs_section((Target_mips<32,_true> *)pMVar53)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53)" ( (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ))) ;) (labeled_statement "LAB_002c81eb:\n          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);" statement_identifier : (expression_statement "Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);" (comma_expression "Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::plt_section((Target_mips<32,_true> *)pMVar53)" identifier > (ERROR "::" : :) (call_expression "plt_section((Target_mips<32,_true> *)pMVar53)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53)" ( (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ))))) ;)) (labeled_statement "LAB_002c81f0:\n          Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);" statement_identifier : (expression_statement "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);" (comma_expression "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)pMVar53)" identifier > (ERROR "::" : :) (call_expression "got_section((Target_mips<32,_true> *)pMVar53)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53)" ( (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ))))) ;)) (labeled_statement "LAB_002c81f5:\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate");" statement_identifier : comment (labeled_statement "gold::do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate");" (call_expression "do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2e88,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;))) })) (if_statement "if (((pMVar6->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym);\n        }" if (parenthesized_expression "(((pMVar6->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0)" ( (binary_expression "((pMVar6->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0" (parenthesized_expression "((pMVar6->super_Output_section_data).super_Output_data.field_0x20 & 1)" ( (binary_expression "(pMVar6->super_Output_section_data).super_Output_data.field_0x20 & 1" (field_expression "(pMVar6->super_Output_section_data).super_Output_data.field_0x20" (field_expression "(pMVar6->super_Output_section_data).super_Output_data" (parenthesized_expression "(pMVar6->super_Output_section_data)" ( (field_expression "pMVar6->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym);\n        }" { comment (expression_statement "Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym);" (comma_expression "Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym)" (binary_expression "Mips_output_data_plt<64" identifier < number_literal) , (binary_expression "_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym)" identifier > (ERROR "::" : :) (call_expression "mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym)" identifier (argument_list "((Mips_output_data_plt<64,_false> *)pMVar53,sym)" ( (parenthesized_expression "(Mips_output_data_plt<64,_false> *)pMVar53,sym)" ( (comma_expression "Mips_output_data_plt<64,_false> *)pMVar53,sym" (binary_expression "Mips_output_data_plt<64" identifier < number_literal) , (comma_expression "_false> *)pMVar53,sym" (binary_expression "_false> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , identifier)) )) ))))) ;) })) (expression_statement "uVar23 = *(uint *)((long)&gsym[1].super_Symbol.version_ + 4);" (assignment_expression "uVar23 = *(uint *)((long)&gsym[1].super_Symbol.version_ + 4)" identifier = (pointer_expression "*(uint *)((long)&gsym[1].super_Symbol.version_ + 4)" * (cast_expression "(uint *)((long)&gsym[1].super_Symbol.version_ + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&gsym[1].super_Symbol.version_ + 4)" ( (binary_expression "(long)&gsym[1].super_Symbol.version_ + 4" (cast_expression "(long)&gsym[1].super_Symbol.version_" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&gsym[1].super_Symbol.version_" & (field_expression "gsym[1].super_Symbol.version_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) + number_literal) ))))) ;) (expression_statement "puVar1 = &(pMVar6->super_Output_section_data).super_Output_data.address_;" (assignment_expression "puVar1 = &(pMVar6->super_Output_section_data).super_Output_data.address_" identifier = (pointer_expression "&(pMVar6->super_Output_section_data).super_Output_data.address_" & (field_expression "(pMVar6->super_Output_section_data).super_Output_data.address_" (field_expression "(pMVar6->super_Output_section_data).super_Output_data" (parenthesized_expression "(pMVar6->super_Output_section_data)" ( (field_expression "pMVar6->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier))) ;) (expression_statement "bVar61 = CARRY4(uVar23,(uint)*puVar1);" (assignment_expression "bVar61 = CARRY4(uVar23,(uint)*puVar1)" identifier = (call_expression "CARRY4(uVar23,(uint)*puVar1)" identifier (argument_list "(uVar23,(uint)*puVar1)" ( identifier , (binary_expression "(uint)*puVar1" (parenthesized_expression "(uint)" ( identifier )) * identifier) )))) ;) (expression_statement "VVar20 = uVar23 + (int)*puVar1;" (assignment_expression "VVar20 = uVar23 + (int)*puVar1" identifier = (binary_expression "uVar23 + (int)*puVar1" identifier + (cast_expression "(int)*puVar1" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*puVar1" * identifier)))) ;) (expression_statement "bVar63 = VVar20 == 0;" (assignment_expression "bVar63 = VVar20 == 0" identifier = (binary_expression "VVar20 == 0" identifier == number_literal)) ;) (goto_statement "goto LAB_002c4c88;" goto statement_identifier ;) })) }))) (expression_statement "pMVar42 = (Mips_relobj<32,_false> *)(gsym->super_Symbol).name_;" (assignment_expression "pMVar42 = (Mips_relobj<32,_false> *)(gsym->super_Symbol).name_" identifier = (field_expression "(Mips_relobj<32,_false> *)(gsym->super_Symbol).name_" (call_expression "(Mips_relobj<32,_false> *)(gsym->super_Symbol)" (parenthesized_expression "(Mips_relobj<32,_false> *)" ( (comma_expression "Mips_relobj<32,_false> *" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) ))) . field_identifier)) ;) (expression_statement "lVar40 = 9;" (assignment_expression "lVar40 = 9" identifier = number_literal) ;) (expression_statement "pMVar53 = pMVar42;" (assignment_expression "pMVar53 = pMVar42" identifier = identifier) ;) (expression_statement "pbVar52 = (byte *)"_gp_disp";" (assignment_expression "pbVar52 = (byte *)"_gp_disp"" identifier = (cast_expression "(byte *)"_gp_disp"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""_gp_disp"" " string_content "))) ;) (do_statement "do {\n      if (lVar40 == 0) break;\n      lVar40 = lVar40 + -1;\n      bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;\n      bVar61 = bVar17 < *pbVar52;\n      bVar63 = bVar17 == *pbVar52;\n      pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar53 + (ulong)bVar18 * -2 + 1);\n      pbVar52 = pbVar52 + (ulong)bVar18 * -2 + 1;\n    } while (bVar63);" do (compound_statement "{\n      if (lVar40 == 0) break;\n      lVar40 = lVar40 + -1;\n      bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;\n      bVar61 = bVar17 < *pbVar52;\n      bVar63 = bVar17 == *pbVar52;\n      pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar53 + (ulong)bVar18 * -2 + 1);\n      pbVar52 = pbVar52 + (ulong)bVar18 * -2 + 1;\n    }" { (if_statement "if (lVar40 == 0) break;" if (parenthesized_expression "(lVar40 == 0)" ( (binary_expression "lVar40 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar40 = lVar40 + -1;" (assignment_expression "lVar40 = lVar40 + -1" identifier = (binary_expression "lVar40 + -1" identifier + number_literal)) ;) (expression_statement "bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;" (assignment_expression "bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" identifier = (pointer_expression "*(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" * (cast_expression "(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(((Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" & (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" ( (field_expression "((Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" (field_expression "((Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32" (binary_expression "_true> *)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj" identifier > (pointer_expression "*)\n                          &(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) )))))) ;) (expression_statement "bVar61 = bVar17 < *pbVar52;" (assignment_expression "bVar61 = bVar17 < *pbVar52" identifier = (binary_expression "bVar17 < *pbVar52" identifier < (pointer_expression "*pbVar52" * identifier))) ;) (expression_statement "bVar63 = bVar17 == *pbVar52;" (assignment_expression "bVar63 = bVar17 == *pbVar52" identifier = (binary_expression "bVar17 == *pbVar52" identifier == (pointer_expression "*pbVar52" * identifier))) ;) (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar53 + (ulong)bVar18 * -2 + 1);" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar53 + (ulong)bVar18 * -2 + 1)" identifier = (call_expression "(Mips_relobj<32,_false> *)((long)pMVar53 + (ulong)bVar18 * -2 + 1)" (parenthesized_expression "(Mips_relobj<32,_false> *)" ( (comma_expression "Mips_relobj<32,_false> *" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "((long)pMVar53 + (ulong)bVar18 * -2 + 1)" ( (binary_expression "(long)pMVar53 + (ulong)bVar18 * -2 + 1" (binary_expression "(long)pMVar53 + (ulong)bVar18 * -2" (cast_expression "(long)pMVar53" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "(ulong)bVar18 * -2" (cast_expression "(ulong)bVar18" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "pbVar52 = pbVar52 + (ulong)bVar18 * -2 + 1;" (assignment_expression "pbVar52 = pbVar52 + (ulong)bVar18 * -2 + 1" identifier = (binary_expression "pbVar52 + (ulong)bVar18 * -2 + 1" (binary_expression "pbVar52 + (ulong)bVar18 * -2" identifier + (binary_expression "(ulong)bVar18 * -2" (cast_expression "(ulong)bVar18" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar63)" ( identifier )) ;) (expression_statement "lVar40 = 0xf;" (assignment_expression "lVar40 = 0xf" identifier = number_literal) ;) (expression_statement "bVar62 = !bVar61 && !bVar63;" (assignment_expression "bVar62 = !bVar61 && !bVar63" identifier = (binary_expression "!bVar61 && !bVar63" (unary_expression "!bVar61" ! identifier) && (unary_expression "!bVar63" ! identifier))) ;) (expression_statement "bVar63 = bVar62 < bVar61;" (assignment_expression "bVar63 = bVar62 < bVar61" identifier = (binary_expression "bVar62 < bVar61" identifier < identifier)) ;) (expression_statement "bVar64 = bVar62 == bVar61;" (assignment_expression "bVar64 = bVar62 == bVar61" identifier = (binary_expression "bVar62 == bVar61" identifier == identifier)) ;) (expression_statement "pMVar35 = (Mips_relobj<32,_false> *)"__gnu_local_gp";" (assignment_expression "pMVar35 = (Mips_relobj<32,_false> *)"__gnu_local_gp"" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)"__gnu_local_gp"" ( (comma_expression "Mips_relobj<32,_false> *)"__gnu_local_gp"" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)"__gnu_local_gp"" identifier > (pointer_expression "*)"__gnu_local_gp"" * (ERROR ")" )) (string_literal ""__gnu_local_gp"" " string_content ")))) ))) ;) (do_statement "do {\n      object = (_List_node_base **)pMVar42;\n      pMVar53 = pMVar35;\n      if (lVar40 == 0) break;\n      lVar40 = lVar40 + -1;\n      pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar35 + (ulong)bVar18 * -2 + 1);\n      object = (_List_node_base **)((long)pMVar42 + (ulong)bVar18 * -2 + 1);\n      bVar4 = *(byte *)&(((Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;\n      bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;\n      bVar63 = bVar17 < bVar4;\n      bVar64 = bVar17 == bVar4;\n      pMVar42 = (Mips_relobj<32,_false> *)object;\n      pMVar35 = pMVar53;\n    } while (bVar64);" do (compound_statement "{\n      object = (_List_node_base **)pMVar42;\n      pMVar53 = pMVar35;\n      if (lVar40 == 0) break;\n      lVar40 = lVar40 + -1;\n      pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar35 + (ulong)bVar18 * -2 + 1);\n      object = (_List_node_base **)((long)pMVar42 + (ulong)bVar18 * -2 + 1);\n      bVar4 = *(byte *)&(((Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;\n      bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;\n      bVar63 = bVar17 < bVar4;\n      bVar64 = bVar17 == bVar4;\n      pMVar42 = (Mips_relobj<32,_false> *)object;\n      pMVar35 = pMVar53;\n    }" { (expression_statement "object = (_List_node_base **)pMVar42;" (assignment_expression "object = (_List_node_base **)pMVar42" identifier = (cast_expression "(_List_node_base **)pMVar42" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "pMVar53 = pMVar35;" (assignment_expression "pMVar53 = pMVar35" identifier = identifier) ;) (if_statement "if (lVar40 == 0) break;" if (parenthesized_expression "(lVar40 == 0)" ( (binary_expression "lVar40 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar40 = lVar40 + -1;" (assignment_expression "lVar40 = lVar40 + -1" identifier = (binary_expression "lVar40 + -1" identifier + number_literal)) ;) (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar35 + (ulong)bVar18 * -2 + 1);" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar35 + (ulong)bVar18 * -2 + 1)" identifier = (call_expression "(Mips_relobj<32,_false> *)((long)pMVar35 + (ulong)bVar18 * -2 + 1)" (parenthesized_expression "(Mips_relobj<32,_false> *)" ( (comma_expression "Mips_relobj<32,_false> *" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "((long)pMVar35 + (ulong)bVar18 * -2 + 1)" ( (binary_expression "(long)pMVar35 + (ulong)bVar18 * -2 + 1" (binary_expression "(long)pMVar35 + (ulong)bVar18 * -2" (cast_expression "(long)pMVar35" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "(ulong)bVar18 * -2" (cast_expression "(ulong)bVar18" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "object = (_List_node_base **)((long)pMVar42 + (ulong)bVar18 * -2 + 1);" (assignment_expression "object = (_List_node_base **)((long)pMVar42 + (ulong)bVar18 * -2 + 1)" identifier = (cast_expression "(_List_node_base **)((long)pMVar42 + (ulong)bVar18 * -2 + 1)" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((long)pMVar42 + (ulong)bVar18 * -2 + 1)" ( (binary_expression "(long)pMVar42 + (ulong)bVar18 * -2 + 1" (binary_expression "(long)pMVar42 + (ulong)bVar18 * -2" (cast_expression "(long)pMVar42" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "(ulong)bVar18 * -2" (cast_expression "(ulong)bVar18" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) (expression_statement "bVar4 = *(byte *)&(((Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;" (assignment_expression "bVar4 = *(byte *)&(((Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" identifier = (pointer_expression "*(byte *)&(((Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" * (cast_expression "(byte *)&(((Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(((Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" & (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" ( (field_expression "((Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" (field_expression "((Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)->super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj<32" (binary_expression "_true> *)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj" identifier > (pointer_expression "*)\n                         &(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj" & (field_expression "(pMVar35->super_Sized_relobj_file<32,_false>).\n                          super_Sized_relobj" (parenthesized_expression "(pMVar35->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar35->super_Sized_relobj_file<32,_false" (binary_expression "pMVar35->super_Sized_relobj_file<32" (field_expression "pMVar35->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) )))))) ;) (expression_statement "bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;" (assignment_expression "bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" identifier = (pointer_expression "*(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" * (cast_expression "(byte *)&(((Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(((Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" & (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" ( (field_expression "((Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object" (field_expression "((Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj<32" (binary_expression "_true> *)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj" identifier > (pointer_expression "*)\n                          &(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj" & (field_expression "(pMVar42->super_Sized_relobj_file<32,_false>).\n                           super_Sized_relobj" (parenthesized_expression "(pMVar42->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar42->super_Sized_relobj_file<32,_false" (binary_expression "pMVar42->super_Sized_relobj_file<32" (field_expression "pMVar42->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) )))))) ;) (expression_statement "bVar63 = bVar17 < bVar4;" (assignment_expression "bVar63 = bVar17 < bVar4" identifier = (binary_expression "bVar17 < bVar4" identifier < identifier)) ;) (expression_statement "bVar64 = bVar17 == bVar4;" (assignment_expression "bVar64 = bVar17 == bVar4" identifier = (binary_expression "bVar17 == bVar4" identifier == identifier)) ;) (expression_statement "pMVar42 = (Mips_relobj<32,_false> *)object;" (assignment_expression "pMVar42 = (Mips_relobj<32,_false> *)object" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)object" ( (comma_expression "Mips_relobj<32,_false> *)object" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)object" identifier > (pointer_expression "*)object" * (ERROR ")" )) identifier))) ))) ;) (expression_statement "pMVar35 = pMVar53;" (assignment_expression "pMVar35 = pMVar53" identifier = identifier) ;) }) while (parenthesized_expression "(bVar64)" ( identifier )) ;) if (parenthesized_expression "(bVar62 == bVar61)" ( (binary_expression "bVar62 == bVar61" identifier == identifier) )) (compound_statement "{\n      object = (_List_node_base **)(ulong)(byte)this_00->field_0x36c;\n      bVar18 = (byte)this_00->field_0x36c >> 1 & 1 ^ 1;\n      if ((!bVar63 && !bVar64) == bVar63) {\n        if (bVar18 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar18 == 0) goto LAB_002c5078;\n      if (((1 < uVar60 - 0x68) && (1 < uVar60 - 5)) && ((1 < uVar60 - 0x86 && (1 < uVar60 - 0x40))))\n      {\n        pcVar28 = (char *)gettext(\n                                 "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                                 );\n        object = (_List_node_base **)relnum;\n        pMVar53 = (Mips_relobj<32,_false> *)relinfo;\n        gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);\n      }\n      local_f8 = 1;\n    }" { (expression_statement "object = (_List_node_base **)(ulong)(byte)this_00->field_0x36c;" (assignment_expression "object = (_List_node_base **)(ulong)(byte)this_00->field_0x36c" identifier = (cast_expression "(_List_node_base **)(ulong)(byte)this_00->field_0x36c" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)(byte)this_00->field_0x36c" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(byte)this_00->field_0x36c" ( (type_descriptor "byte" type_identifier) ) (field_expression "this_00->field_0x36c" identifier -> field_identifier))))) ;) (expression_statement "bVar18 = (byte)this_00->field_0x36c >> 1 & 1 ^ 1;" (assignment_expression "bVar18 = (byte)this_00->field_0x36c >> 1 & 1 ^ 1" identifier = (binary_expression "(byte)this_00->field_0x36c >> 1 & 1 ^ 1" (binary_expression "(byte)this_00->field_0x36c >> 1 & 1" (binary_expression "(byte)this_00->field_0x36c >> 1" (cast_expression "(byte)this_00->field_0x36c" ( (type_descriptor "byte" type_identifier) ) (field_expression "this_00->field_0x36c" identifier -> field_identifier)) >> number_literal) & number_literal) ^ number_literal)) ;) (if_statement "if ((!bVar63 && !bVar64) == bVar63) {\n        if (bVar18 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar18 == 0) goto LAB_002c5078;" if (parenthesized_expression "((!bVar63 && !bVar64) == bVar63)" ( (binary_expression "(!bVar63 && !bVar64) == bVar63" (parenthesized_expression "(!bVar63 && !bVar64)" ( (binary_expression "!bVar63 && !bVar64" (unary_expression "!bVar63" ! identifier) && (unary_expression "!bVar64" ! identifier)) )) == identifier) )) (compound_statement "{\n        if (bVar18 == 0) goto LAB_002c51e0;\n      }" { (if_statement "if (bVar18 == 0) goto LAB_002c51e0;" if (parenthesized_expression "(bVar18 == 0)" ( (binary_expression "bVar18 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c51e0;" goto statement_identifier ;)) }) (else_clause "else if (bVar18 == 0) goto LAB_002c5078;" else (if_statement "if (bVar18 == 0) goto LAB_002c5078;" if (parenthesized_expression "(bVar18 == 0)" ( (binary_expression "bVar18 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c5078;" goto statement_identifier ;)))) (if_statement "if (((1 < uVar60 - 0x68) && (1 < uVar60 - 5)) && ((1 < uVar60 - 0x86 && (1 < uVar60 - 0x40))))\n      {\n        pcVar28 = (char *)gettext(\n                                 "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                                 );\n        object = (_List_node_base **)relnum;\n        pMVar53 = (Mips_relobj<32,_false> *)relinfo;\n        gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);\n      }" if (parenthesized_expression "(((1 < uVar60 - 0x68) && (1 < uVar60 - 5)) && ((1 < uVar60 - 0x86 && (1 < uVar60 - 0x40))))" ( (binary_expression "((1 < uVar60 - 0x68) && (1 < uVar60 - 5)) && ((1 < uVar60 - 0x86 && (1 < uVar60 - 0x40)))" (parenthesized_expression "((1 < uVar60 - 0x68) && (1 < uVar60 - 5))" ( (binary_expression "(1 < uVar60 - 0x68) && (1 < uVar60 - 5)" (parenthesized_expression "(1 < uVar60 - 0x68)" ( (binary_expression "1 < uVar60 - 0x68" number_literal < (binary_expression "uVar60 - 0x68" identifier - number_literal)) )) && (parenthesized_expression "(1 < uVar60 - 5)" ( (binary_expression "1 < uVar60 - 5" number_literal < (binary_expression "uVar60 - 5" identifier - number_literal)) ))) )) && (parenthesized_expression "((1 < uVar60 - 0x86 && (1 < uVar60 - 0x40)))" ( (parenthesized_expression "(1 < uVar60 - 0x86 && (1 < uVar60 - 0x40))" ( (binary_expression "1 < uVar60 - 0x86 && (1 < uVar60 - 0x40)" (binary_expression "1 < uVar60 - 0x86" number_literal < (binary_expression "uVar60 - 0x86" identifier - number_literal)) && (parenthesized_expression "(1 < uVar60 - 0x40)" ( (binary_expression "1 < uVar60 - 0x40" number_literal < (binary_expression "uVar60 - 0x40" identifier - number_literal)) ))) )) ))) )) (compound_statement "{\n        pcVar28 = (char *)gettext(\n                                 "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                                 );\n        object = (_List_node_base **)relnum;\n        pMVar53 = (Mips_relobj<32,_false> *)relinfo;\n        gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);\n      }" { (expression_statement "pcVar28 = (char *)gettext(\n                                 "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                                 );" (assignment_expression "pcVar28 = (char *)gettext(\n                                 "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                                 )" identifier = (cast_expression "(char *)gettext(\n                                 "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                                 )" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext(\n                                 "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                                 )" identifier (argument_list "(\n                                 "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                                 )" ( (string_literal ""relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."" " string_content ") ))))) ;) (expression_statement "object = (_List_node_base **)relnum;" (assignment_expression "object = (_List_node_base **)relnum" identifier = (cast_expression "(_List_node_base **)relnum" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)relinfo;" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)relinfo" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)relinfo" ( (comma_expression "Mips_relobj<32,_false> *)relinfo" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)relinfo" identifier > (pointer_expression "*)relinfo" * (ERROR ")" )) identifier))) ))) ;) (labeled_statement "gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);" statement_identifier : (ERROR ":" :) (expression_statement "gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);" (comma_expression "gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28)" (binary_expression "gold_error_at_location<32" identifier < number_literal) , (binary_expression "_true>(relinfo,relnum,(ulong)uVar48,pcVar28)" identifier > (parenthesized_expression "(relinfo,relnum,(ulong)uVar48,pcVar28)" ( (comma_expression "relinfo,relnum,(ulong)uVar48,pcVar28" identifier , (comma_expression "relnum,(ulong)uVar48,pcVar28" identifier , (comma_expression "(ulong)uVar48,pcVar28" (cast_expression "(ulong)uVar48" ( (type_descriptor "ulong" type_identifier) ) identifier) , identifier))) )))) ;)) })) (expression_statement "local_f8 = 1;" (assignment_expression "local_f8 = 1" identifier = number_literal) ;) }) else { if (parenthesized_expression "((!bVar63 && !bVar64) == bVar63)" ( (binary_expression "(!bVar63 && !bVar64) == bVar63" (parenthesized_expression "(!bVar63 && !bVar64)" ( (binary_expression "!bVar63 && !bVar64" (unary_expression "!bVar63" ! identifier) && (unary_expression "!bVar64" ! identifier)) )) == identifier) )) { (labeled_statement "LAB_002c51e0:\n        if (target->gp_ == (Sized_symbol<32> *)0x0) {\n          symval.u_.value = 0;\n          object = (_List_node_base **)target;\n        }\n        else {\n          symval.u_.value = target->gp_->value_;\n          object = (_List_node_base **)target;\n          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63;\n  uVar49 = (uint)(byte)cVar47;\n  if (this->calculate_only_ == false) {\n    this->calculate_only_ = (bool)cVar47;\n    switch(uVar21) {\n    default:\n      goto switchD_002c5379_caseD_0;\n    case 1:\n      local_c0._0_4_ = local_c8;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      if (bVar61 != false) {\n        local_c0._0_4_ = (uint)uVar19;\n        if ((short)uVar19 < 0) {\n          local_c0._0_4_ = uVar19 - 0x10000;\n        }\n      }\n      goto LAB_002c70ec;\n    case 2:\n      goto switchD_002c5379_caseD_2;\n    case 3:\n      goto switchD_002c4f87_caseD_3;\n    case 4:\n    case 100:\n    case 0x85:\n      bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n      local_c0 = (ulong)local_c8;\n      uVar49 = *(uint *)view;\n      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8;\n      uVar26 = uVar23 | uVar49 << 0x18;\n      if (bVar61 == false) {\nLAB_002c7644:\n        bVar16 = bVar61;\n        if (bVar64 == false) {\nLAB_002c764c:\n          uVar57 = SUB81(pTVar54,0);\n          bVar64 = gsym == (Sized_symbol<32> *)0x0;\n          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;\n          if (bVar64) {\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n          uVar49 = (uint)local_c0 & 0x7ffffff;\n          if ((local_c0 & 0x4000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }\n          goto LAB_002c73f5;\n        }\nLAB_002c7cf3:\n        bVar61 = bVar16;\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n        if ((VVar20 & 3) == (uint)(uVar21 == 4)) goto LAB_002c764c;\n        pcVar28 = (char *)gettext("JALX to a non-word-aligned address");\n        gold::gold_warning(pcVar28);\nLAB_002c7d32:\n        SVar27 = STATUS_BAD_RELOC;\n      }\n      else {\n        if (uVar21 == 0x85) {\n          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;\n          goto LAB_002c7644;\n        }\n        local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);\n        bVar16 = bVar64;\n        if (bVar64 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n        uVar57 = SUB81(pTVar54,0);\n        bVar64 = gsym == (Sized_symbol<32> *)0x0;\n        if (bVar64) {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = 0xf0000000;\nLAB_002c73e1:\n          bVar64 = true;\n          uVar49 = address + 4 & uVar49 | (uint)local_c0;\n        }\n        else {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }\nLAB_002c73f5:\n        object = (_List_node_base **)this_00;\n        pSVar34 = (Sized_symbol<32> *)psymval;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n        uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);\n        pSVar44 = extraout_RDX_00;\n        if (((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;\n          goto LAB_002c5940;\n        }\n        uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;\n        object = (_List_node_base **)(ulong)uVar23;\n        if (local_e3 != 0) {\n          uVar26 = uVar26 >> 0x1a;\n          uVar46 = (undefined7)((ulong)pSVar44 >> 8);\n          if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }\n          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }\n          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;\n        }\n        if (gold::parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);\n        }\n        if (!bVar62 || !bVar63) goto LAB_002c5ccb;\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = uVar23;\n      }\n      goto LAB_002c5940;\n    case 5:\n    case 0x68:\n    case 0x86:\n      goto switchD_002c5379_caseD_5;\n    case 6:\n    case 0x69:\n    case 0x87:\n    case 0x9d:\n      local_c0 = (ulong)local_c8;\n      in_stack_fffffffffffffed0 = *(uint *)view;\n      uVar23 = (in_stack_fffffffffffffed0 & 0xff0000) >> 8;\n      uVar49 = in_stack_fffffffffffffed0 >> 0x18 | uVar23;\n      in_stack_fffffffffffffee0 = (_List_node_base *)(ulong)uVar49;\n      if (bVar61 != false) {\n        object = (_List_node_base **)(ulong)uVar49;\n        uVar26 = uVar49 - 0x10000;\n        if ((uVar23 & 0x8000) == 0) {\n          uVar26 = uVar49;\n        }\n        local_c0 = (ulong)uVar26;\n      }\n      goto LAB_002c7171;\n    case 7:\n    case 8:\n    case 0x65:\n    case 0x88:\n    case 0x89:\n    case 0xac:\n      local_c0._0_4_ = local_c8;\n      pSVar34 = target->gp_;\n      if (pSVar34 != (Sized_symbol<32> *)0x0) goto LAB_002c7253;\n      VVar39 = 0;\nLAB_002c7297:\n      uVar49 = *(uint *)view;\n      uVar26 = (uVar49 & 0xff0000) >> 8;\n      uVar23 = uVar49 >> 0x18 | uVar26;\n      uVar49 = uVar23 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n      local_c8 = (uint)local_c0;\n      if (bVar61 != false) {\n        if (uVar21 == 0xac) {\n          local_c0._0_4_ = uVar49 * 4 & 0x1fc;\n        }\n        else {\n          local_c0._0_4_ = uVar23 - 0x10000;\n          if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }\n        }\n      }\n      goto LAB_002c72d4;\n    case 9:\n    case 0x66:\n    case 0x8a:\n      goto switchD_002c5379_caseD_9;\n    case 10:\n      goto LAB_002c6a55;\n    case 0xb:\n    case 0x67:\n    case 0x8e:\n      goto switchD_002c5379_caseD_b;\n    case 0xc:\n      goto switchD_002c5379_caseD_c;\n    case 0x12:\n      goto switchD_002c5379_caseD_12;\n    case 0x13:\n    case 0x91:\n    case 0xf9:\n      goto switchD_002c5379_caseD_13;\n    case 0x14:\n    case 0x92:\n      goto switchD_002c5379_caseD_14;\n    case 0x15:\n    case 0x93:\n      goto switchD_002c5379_caseD_15;\n    case 0x16:\n    case 0x1e:\n    case 0x94:\n    case 0x99:\n      goto switchD_002c5379_caseD_16;\n    case 0x17:\n    case 0x1f:\n    case 0x95:\n    case 0x9a:\n      goto switchD_002c5379_caseD_17;\n    case 0x18:\n    case 0x96:\n      local_c0._0_4_ = local_c8;\n      if (bVar61 != false) {\n        uVar10 = *(undefined8 *)view;\n        local_c0._0_4_ =\n             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }\n      goto LAB_002c6b1a;\n    case 0x1c:\n    case 0x97:\n      goto LAB_002c59bd;\n    case 0x1d:\n    case 0x98:\n      goto LAB_002c6b55;\n    case 0x25:\n    case 0x9c:\n      goto switchD_002c5379_caseD_25;\n    case 0x27:\n    case 0x29:\n      goto switchD_002c5379_caseD_27;\n    case 0x2a:\n    case 0x6a:\n    case 0xa2:\n      goto switchD_002c5379_caseD_2a;\n    case 0x2b:\n    case 0x6b:\n    case 0xa3:\n      goto switchD_002c5379_caseD_2b;\n    case 0x2c:\n    case 0x6c:\n    case 0xa4:\n      goto switchD_002c5379_caseD_2c;\n    case 0x2d:\n    case 0x6d:\n    case 0xa5:\n      goto switchD_002c5379_caseD_2d;\n    case 0x2e:\n    case 0x6e:\n    case 0xa6:\n      goto switchD_002c5379_caseD_2e;\n    case 0x2f:\n    case 0x30:\n      goto switchD_002c5379_caseD_2f;\n    case 0x31:\n    case 0x6f:\n    case 0xa9:\n      goto switchD_002c5379_caseD_31;\n    case 0x32:\n    case 0x70:\n    case 0xaa:\n      goto switchD_002c5379_caseD_32;\n    case 0x3c:\n      goto LAB_002c6f06;\n    case 0x3d:\n      goto LAB_002c6fd2;\n    case 0x3e:\n      goto LAB_002c6d53;\n    case 0x3f:\n      goto LAB_002c6e24;\n    case 0x40:\n      goto switchD_002c5379_caseD_40;\n    case 0x41:\n      goto LAB_002c6ccf;\n    case 0x8b:\n      goto LAB_002c6bb8;\n    case 0x8c:\n      goto LAB_002c6c3e;\n    case 0x8d:\n      goto LAB_002c69c5;\n    case 0xf8:\n      if (bVar61 != false) {\n        uVar21 = *(uint *)view;\n        local_c0._0_4_ =\n             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n        goto LAB_002c6ed9;\n      }\nLAB_002c8390:\n      local_c0._0_4_ = local_c8;\n      goto LAB_002c6ed9;\n    }\n  }" statement_identifier : (if_statement "if (target->gp_ == (Sized_symbol<32> *)0x0) {\n          symval.u_.value = 0;\n          object = (_List_node_base **)target;\n        }\n        else {\n          symval.u_.value = target->gp_->value_;\n          object = (_List_node_base **)target;\n          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63;\n  uVar49 = (uint)(byte)cVar47;\n  if (this->calculate_only_ == false) {\n    this->calculate_only_ = (bool)cVar47;\n    switch(uVar21) {\n    default:\n      goto switchD_002c5379_caseD_0;\n    case 1:\n      local_c0._0_4_ = local_c8;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      if (bVar61 != false) {\n        local_c0._0_4_ = (uint)uVar19;\n        if ((short)uVar19 < 0) {\n          local_c0._0_4_ = uVar19 - 0x10000;\n        }\n      }\n      goto LAB_002c70ec;\n    case 2:\n      goto switchD_002c5379_caseD_2;\n    case 3:\n      goto switchD_002c4f87_caseD_3;\n    case 4:\n    case 100:\n    case 0x85:\n      bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n      local_c0 = (ulong)local_c8;\n      uVar49 = *(uint *)view;\n      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8;\n      uVar26 = uVar23 | uVar49 << 0x18;\n      if (bVar61 == false) {\nLAB_002c7644:\n        bVar16 = bVar61;\n        if (bVar64 == false) {\nLAB_002c764c:\n          uVar57 = SUB81(pTVar54,0);\n          bVar64 = gsym == (Sized_symbol<32> *)0x0;\n          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;\n          if (bVar64) {\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n          uVar49 = (uint)local_c0 & 0x7ffffff;\n          if ((local_c0 & 0x4000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }\n          goto LAB_002c73f5;\n        }\nLAB_002c7cf3:\n        bVar61 = bVar16;\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n        if ((VVar20 & 3) == (uint)(uVar21 == 4)) goto LAB_002c764c;\n        pcVar28 = (char *)gettext("JALX to a non-word-aligned address");\n        gold::gold_warning(pcVar28);\nLAB_002c7d32:\n        SVar27 = STATUS_BAD_RELOC;\n      }\n      else {\n        if (uVar21 == 0x85) {\n          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;\n          goto LAB_002c7644;\n        }\n        local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);\n        bVar16 = bVar64;\n        if (bVar64 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n        uVar57 = SUB81(pTVar54,0);\n        bVar64 = gsym == (Sized_symbol<32> *)0x0;\n        if (bVar64) {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = 0xf0000000;\nLAB_002c73e1:\n          bVar64 = true;\n          uVar49 = address + 4 & uVar49 | (uint)local_c0;\n        }\n        else {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }\nLAB_002c73f5:\n        object = (_List_node_base **)this_00;\n        pSVar34 = (Sized_symbol<32> *)psymval;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n        uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);\n        pSVar44 = extraout_RDX_00;\n        if (((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;\n          goto LAB_002c5940;\n        }\n        uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;\n        object = (_List_node_base **)(ulong)uVar23;\n        if (local_e3 != 0) {\n          uVar26 = uVar26 >> 0x1a;\n          uVar46 = (undefined7)((ulong)pSVar44 >> 8);\n          if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }\n          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }\n          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;\n        }\n        if (gold::parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);\n        }\n        if (!bVar62 || !bVar63) goto LAB_002c5ccb;\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = uVar23;\n      }\n      goto LAB_002c5940;\n    case 5:\n    case 0x68:\n    case 0x86:\n      goto switchD_002c5379_caseD_5;\n    case 6:\n    case 0x69:\n    case 0x87:\n    case 0x9d:\n      local_c0 = (ulong)local_c8;\n      in_stack_fffffffffffffed0 = *(uint *)view;\n      uVar23 = (in_stack_fffffffffffffed0 & 0xff0000) >> 8;\n      uVar49 = in_stack_fffffffffffffed0 >> 0x18 | uVar23;\n      in_stack_fffffffffffffee0 = (_List_node_base *)(ulong)uVar49;\n      if (bVar61 != false) {\n        object = (_List_node_base **)(ulong)uVar49;\n        uVar26 = uVar49 - 0x10000;\n        if ((uVar23 & 0x8000) == 0) {\n          uVar26 = uVar49;\n        }\n        local_c0 = (ulong)uVar26;\n      }\n      goto LAB_002c7171;\n    case 7:\n    case 8:\n    case 0x65:\n    case 0x88:\n    case 0x89:\n    case 0xac:\n      local_c0._0_4_ = local_c8;\n      pSVar34 = target->gp_;\n      if (pSVar34 != (Sized_symbol<32> *)0x0) goto LAB_002c7253;\n      VVar39 = 0;\nLAB_002c7297:\n      uVar49 = *(uint *)view;\n      uVar26 = (uVar49 & 0xff0000) >> 8;\n      uVar23 = uVar49 >> 0x18 | uVar26;\n      uVar49 = uVar23 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n      local_c8 = (uint)local_c0;\n      if (bVar61 != false) {\n        if (uVar21 == 0xac) {\n          local_c0._0_4_ = uVar49 * 4 & 0x1fc;\n        }\n        else {\n          local_c0._0_4_ = uVar23 - 0x10000;\n          if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }\n        }\n      }\n      goto LAB_002c72d4;\n    case 9:\n    case 0x66:\n    case 0x8a:\n      goto switchD_002c5379_caseD_9;\n    case 10:\n      goto LAB_002c6a55;\n    case 0xb:\n    case 0x67:\n    case 0x8e:\n      goto switchD_002c5379_caseD_b;\n    case 0xc:\n      goto switchD_002c5379_caseD_c;\n    case 0x12:\n      goto switchD_002c5379_caseD_12;\n    case 0x13:\n    case 0x91:\n    case 0xf9:\n      goto switchD_002c5379_caseD_13;\n    case 0x14:\n    case 0x92:\n      goto switchD_002c5379_caseD_14;\n    case 0x15:\n    case 0x93:\n      goto switchD_002c5379_caseD_15;\n    case 0x16:\n    case 0x1e:\n    case 0x94:\n    case 0x99:\n      goto switchD_002c5379_caseD_16;\n    case 0x17:\n    case 0x1f:\n    case 0x95:\n    case 0x9a:\n      goto switchD_002c5379_caseD_17;\n    case 0x18:\n    case 0x96:\n      local_c0._0_4_ = local_c8;\n      if (bVar61 != false) {\n        uVar10 = *(undefined8 *)view;\n        local_c0._0_4_ =\n             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }\n      goto LAB_002c6b1a;\n    case 0x1c:\n    case 0x97:\n      goto LAB_002c59bd;\n    case 0x1d:\n    case 0x98:\n      goto LAB_002c6b55;\n    case 0x25:\n    case 0x9c:\n      goto switchD_002c5379_caseD_25;\n    case 0x27:\n    case 0x29:\n      goto switchD_002c5379_caseD_27;\n    case 0x2a:\n    case 0x6a:\n    case 0xa2:\n      goto switchD_002c5379_caseD_2a;\n    case 0x2b:\n    case 0x6b:\n    case 0xa3:\n      goto switchD_002c5379_caseD_2b;\n    case 0x2c:\n    case 0x6c:\n    case 0xa4:\n      goto switchD_002c5379_caseD_2c;\n    case 0x2d:\n    case 0x6d:\n    case 0xa5:\n      goto switchD_002c5379_caseD_2d;\n    case 0x2e:\n    case 0x6e:\n    case 0xa6:\n      goto switchD_002c5379_caseD_2e;\n    case 0x2f:\n    case 0x30:\n      goto switchD_002c5379_caseD_2f;\n    case 0x31:\n    case 0x6f:\n    case 0xa9:\n      goto switchD_002c5379_caseD_31;\n    case 0x32:\n    case 0x70:\n    case 0xaa:\n      goto switchD_002c5379_caseD_32;\n    case 0x3c:\n      goto LAB_002c6f06;\n    case 0x3d:\n      goto LAB_002c6fd2;\n    case 0x3e:\n      goto LAB_002c6d53;\n    case 0x3f:\n      goto LAB_002c6e24;\n    case 0x40:\n      goto switchD_002c5379_caseD_40;\n    case 0x41:\n      goto LAB_002c6ccf;\n    case 0x8b:\n      goto LAB_002c6bb8;\n    case 0x8c:\n      goto LAB_002c6c3e;\n    case 0x8d:\n      goto LAB_002c69c5;\n    case 0xf8:\n      if (bVar61 != false) {\n        uVar21 = *(uint *)view;\n        local_c0._0_4_ =\n             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n        goto LAB_002c6ed9;\n      }\nLAB_002c8390:\n      local_c0._0_4_ = local_c8;\n      goto LAB_002c6ed9;\n    }\n  }" if (parenthesized_expression "(target->gp_ == (Sized_symbol<32> *)0x0)" ( (binary_expression "target->gp_ == (Sized_symbol<32> *)0x0)" (field_expression "target->gp_" identifier -> field_identifier) == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) )) (compound_statement "{\n          symval.u_.value = 0;\n          object = (_List_node_base **)target;\n        }" { (expression_statement "symval.u_.value = 0;" (assignment_expression "symval.u_.value = 0" (field_expression "symval.u_.value" (field_expression "symval.u_" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "object = (_List_node_base **)target;" (assignment_expression "object = (_List_node_base **)target" identifier = (cast_expression "(_List_node_base **)target" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) }) (else_clause "else {\n          symval.u_.value = target->gp_->value_;\n          object = (_List_node_base **)target;\n          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63;\n  uVar49 = (uint)(byte)cVar47;\n  if (this->calculate_only_ == false) {\n    this->calculate_only_ = (bool)cVar47;\n    switch(uVar21) {\n    default:\n      goto switchD_002c5379_caseD_0;\n    case 1:\n      local_c0._0_4_ = local_c8;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      if (bVar61 != false) {\n        local_c0._0_4_ = (uint)uVar19;\n        if ((short)uVar19 < 0) {\n          local_c0._0_4_ = uVar19 - 0x10000;\n        }\n      }\n      goto LAB_002c70ec;\n    case 2:\n      goto switchD_002c5379_caseD_2;\n    case 3:\n      goto switchD_002c4f87_caseD_3;\n    case 4:\n    case 100:\n    case 0x85:\n      bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n      local_c0 = (ulong)local_c8;\n      uVar49 = *(uint *)view;\n      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8;\n      uVar26 = uVar23 | uVar49 << 0x18;\n      if (bVar61 == false) {\nLAB_002c7644:\n        bVar16 = bVar61;\n        if (bVar64 == false) {\nLAB_002c764c:\n          uVar57 = SUB81(pTVar54,0);\n          bVar64 = gsym == (Sized_symbol<32> *)0x0;\n          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;\n          if (bVar64) {\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n          uVar49 = (uint)local_c0 & 0x7ffffff;\n          if ((local_c0 & 0x4000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }\n          goto LAB_002c73f5;\n        }\nLAB_002c7cf3:\n        bVar61 = bVar16;\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n        if ((VVar20 & 3) == (uint)(uVar21 == 4)) goto LAB_002c764c;\n        pcVar28 = (char *)gettext("JALX to a non-word-aligned address");\n        gold::gold_warning(pcVar28);\nLAB_002c7d32:\n        SVar27 = STATUS_BAD_RELOC;\n      }\n      else {\n        if (uVar21 == 0x85) {\n          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;\n          goto LAB_002c7644;\n        }\n        local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);\n        bVar16 = bVar64;\n        if (bVar64 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n        uVar57 = SUB81(pTVar54,0);\n        bVar64 = gsym == (Sized_symbol<32> *)0x0;\n        if (bVar64) {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = 0xf0000000;\nLAB_002c73e1:\n          bVar64 = true;\n          uVar49 = address + 4 & uVar49 | (uint)local_c0;\n        }\n        else {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }\nLAB_002c73f5:\n        object = (_List_node_base **)this_00;\n        pSVar34 = (Sized_symbol<32> *)psymval;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n        uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);\n        pSVar44 = extraout_RDX_00;\n        if (((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;\n          goto LAB_002c5940;\n        }\n        uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;\n        object = (_List_node_base **)(ulong)uVar23;\n        if (local_e3 != 0) {\n          uVar26 = uVar26 >> 0x1a;\n          uVar46 = (undefined7)((ulong)pSVar44 >> 8);\n          if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }\n          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }\n          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;\n        }\n        if (gold::parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);\n        }\n        if (!bVar62 || !bVar63) goto LAB_002c5ccb;\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = uVar23;\n      }\n      goto LAB_002c5940;\n    case 5:\n    case 0x68:\n    case 0x86:\n      goto switchD_002c5379_caseD_5;\n    case 6:\n    case 0x69:\n    case 0x87:\n    case 0x9d:\n      local_c0 = (ulong)local_c8;\n      in_stack_fffffffffffffed0 = *(uint *)view;\n      uVar23 = (in_stack_fffffffffffffed0 & 0xff0000) >> 8;\n      uVar49 = in_stack_fffffffffffffed0 >> 0x18 | uVar23;\n      in_stack_fffffffffffffee0 = (_List_node_base *)(ulong)uVar49;\n      if (bVar61 != false) {\n        object = (_List_node_base **)(ulong)uVar49;\n        uVar26 = uVar49 - 0x10000;\n        if ((uVar23 & 0x8000) == 0) {\n          uVar26 = uVar49;\n        }\n        local_c0 = (ulong)uVar26;\n      }\n      goto LAB_002c7171;\n    case 7:\n    case 8:\n    case 0x65:\n    case 0x88:\n    case 0x89:\n    case 0xac:\n      local_c0._0_4_ = local_c8;\n      pSVar34 = target->gp_;\n      if (pSVar34 != (Sized_symbol<32> *)0x0) goto LAB_002c7253;\n      VVar39 = 0;\nLAB_002c7297:\n      uVar49 = *(uint *)view;\n      uVar26 = (uVar49 & 0xff0000) >> 8;\n      uVar23 = uVar49 >> 0x18 | uVar26;\n      uVar49 = uVar23 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n      local_c8 = (uint)local_c0;\n      if (bVar61 != false) {\n        if (uVar21 == 0xac) {\n          local_c0._0_4_ = uVar49 * 4 & 0x1fc;\n        }\n        else {\n          local_c0._0_4_ = uVar23 - 0x10000;\n          if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }\n        }\n      }\n      goto LAB_002c72d4;\n    case 9:\n    case 0x66:\n    case 0x8a:\n      goto switchD_002c5379_caseD_9;\n    case 10:\n      goto LAB_002c6a55;\n    case 0xb:\n    case 0x67:\n    case 0x8e:\n      goto switchD_002c5379_caseD_b;\n    case 0xc:\n      goto switchD_002c5379_caseD_c;\n    case 0x12:\n      goto switchD_002c5379_caseD_12;\n    case 0x13:\n    case 0x91:\n    case 0xf9:\n      goto switchD_002c5379_caseD_13;\n    case 0x14:\n    case 0x92:\n      goto switchD_002c5379_caseD_14;\n    case 0x15:\n    case 0x93:\n      goto switchD_002c5379_caseD_15;\n    case 0x16:\n    case 0x1e:\n    case 0x94:\n    case 0x99:\n      goto switchD_002c5379_caseD_16;\n    case 0x17:\n    case 0x1f:\n    case 0x95:\n    case 0x9a:\n      goto switchD_002c5379_caseD_17;\n    case 0x18:\n    case 0x96:\n      local_c0._0_4_ = local_c8;\n      if (bVar61 != false) {\n        uVar10 = *(undefined8 *)view;\n        local_c0._0_4_ =\n             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }\n      goto LAB_002c6b1a;\n    case 0x1c:\n    case 0x97:\n      goto LAB_002c59bd;\n    case 0x1d:\n    case 0x98:\n      goto LAB_002c6b55;\n    case 0x25:\n    case 0x9c:\n      goto switchD_002c5379_caseD_25;\n    case 0x27:\n    case 0x29:\n      goto switchD_002c5379_caseD_27;\n    case 0x2a:\n    case 0x6a:\n    case 0xa2:\n      goto switchD_002c5379_caseD_2a;\n    case 0x2b:\n    case 0x6b:\n    case 0xa3:\n      goto switchD_002c5379_caseD_2b;\n    case 0x2c:\n    case 0x6c:\n    case 0xa4:\n      goto switchD_002c5379_caseD_2c;\n    case 0x2d:\n    case 0x6d:\n    case 0xa5:\n      goto switchD_002c5379_caseD_2d;\n    case 0x2e:\n    case 0x6e:\n    case 0xa6:\n      goto switchD_002c5379_caseD_2e;\n    case 0x2f:\n    case 0x30:\n      goto switchD_002c5379_caseD_2f;\n    case 0x31:\n    case 0x6f:\n    case 0xa9:\n      goto switchD_002c5379_caseD_31;\n    case 0x32:\n    case 0x70:\n    case 0xaa:\n      goto switchD_002c5379_caseD_32;\n    case 0x3c:\n      goto LAB_002c6f06;\n    case 0x3d:\n      goto LAB_002c6fd2;\n    case 0x3e:\n      goto LAB_002c6d53;\n    case 0x3f:\n      goto LAB_002c6e24;\n    case 0x40:\n      goto switchD_002c5379_caseD_40;\n    case 0x41:\n      goto LAB_002c6ccf;\n    case 0x8b:\n      goto LAB_002c6bb8;\n    case 0x8c:\n      goto LAB_002c6c3e;\n    case 0x8d:\n      goto LAB_002c69c5;\n    case 0xf8:\n      if (bVar61 != false) {\n        uVar21 = *(uint *)view;\n        local_c0._0_4_ =\n             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n        goto LAB_002c6ed9;\n      }\nLAB_002c8390:\n      local_c0._0_4_ = local_c8;\n      goto LAB_002c6ed9;\n    }\n  }" else (compound_statement "{\n          symval.u_.value = target->gp_->value_;\n          object = (_List_node_base **)target;\n          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63;\n  uVar49 = (uint)(byte)cVar47;\n  if (this->calculate_only_ == false) {\n    this->calculate_only_ = (bool)cVar47;\n    switch(uVar21) {\n    default:\n      goto switchD_002c5379_caseD_0;\n    case 1:\n      local_c0._0_4_ = local_c8;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      if (bVar61 != false) {\n        local_c0._0_4_ = (uint)uVar19;\n        if ((short)uVar19 < 0) {\n          local_c0._0_4_ = uVar19 - 0x10000;\n        }\n      }\n      goto LAB_002c70ec;\n    case 2:\n      goto switchD_002c5379_caseD_2;\n    case 3:\n      goto switchD_002c4f87_caseD_3;\n    case 4:\n    case 100:\n    case 0x85:\n      bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n      local_c0 = (ulong)local_c8;\n      uVar49 = *(uint *)view;\n      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8;\n      uVar26 = uVar23 | uVar49 << 0x18;\n      if (bVar61 == false) {\nLAB_002c7644:\n        bVar16 = bVar61;\n        if (bVar64 == false) {\nLAB_002c764c:\n          uVar57 = SUB81(pTVar54,0);\n          bVar64 = gsym == (Sized_symbol<32> *)0x0;\n          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;\n          if (bVar64) {\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n          uVar49 = (uint)local_c0 & 0x7ffffff;\n          if ((local_c0 & 0x4000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }\n          goto LAB_002c73f5;\n        }\nLAB_002c7cf3:\n        bVar61 = bVar16;\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n        if ((VVar20 & 3) == (uint)(uVar21 == 4)) goto LAB_002c764c;\n        pcVar28 = (char *)gettext("JALX to a non-word-aligned address");\n        gold::gold_warning(pcVar28);\nLAB_002c7d32:\n        SVar27 = STATUS_BAD_RELOC;\n      }\n      else {\n        if (uVar21 == 0x85) {\n          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;\n          goto LAB_002c7644;\n        }\n        local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);\n        bVar16 = bVar64;\n        if (bVar64 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n        uVar57 = SUB81(pTVar54,0);\n        bVar64 = gsym == (Sized_symbol<32> *)0x0;\n        if (bVar64) {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = 0xf0000000;\nLAB_002c73e1:\n          bVar64 = true;\n          uVar49 = address + 4 & uVar49 | (uint)local_c0;\n        }\n        else {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }\nLAB_002c73f5:\n        object = (_List_node_base **)this_00;\n        pSVar34 = (Sized_symbol<32> *)psymval;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n        uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);\n        pSVar44 = extraout_RDX_00;\n        if (((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;\n          goto LAB_002c5940;\n        }\n        uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;\n        object = (_List_node_base **)(ulong)uVar23;\n        if (local_e3 != 0) {\n          uVar26 = uVar26 >> 0x1a;\n          uVar46 = (undefined7)((ulong)pSVar44 >> 8);\n          if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }\n          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }\n          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;\n        }\n        if (gold::parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);\n        }\n        if (!bVar62 || !bVar63) goto LAB_002c5ccb;\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = uVar23;\n      }\n      goto LAB_002c5940;\n    case 5:\n    case 0x68:\n    case 0x86:\n      goto switchD_002c5379_caseD_5;\n    case 6:\n    case 0x69:\n    case 0x87:\n    case 0x9d:\n      local_c0 = (ulong)local_c8;\n      in_stack_fffffffffffffed0 = *(uint *)view;\n      uVar23 = (in_stack_fffffffffffffed0 & 0xff0000) >> 8;\n      uVar49 = in_stack_fffffffffffffed0 >> 0x18 | uVar23;\n      in_stack_fffffffffffffee0 = (_List_node_base *)(ulong)uVar49;\n      if (bVar61 != false) {\n        object = (_List_node_base **)(ulong)uVar49;\n        uVar26 = uVar49 - 0x10000;\n        if ((uVar23 & 0x8000) == 0) {\n          uVar26 = uVar49;\n        }\n        local_c0 = (ulong)uVar26;\n      }\n      goto LAB_002c7171;\n    case 7:\n    case 8:\n    case 0x65:\n    case 0x88:\n    case 0x89:\n    case 0xac:\n      local_c0._0_4_ = local_c8;\n      pSVar34 = target->gp_;\n      if (pSVar34 != (Sized_symbol<32> *)0x0) goto LAB_002c7253;\n      VVar39 = 0;\nLAB_002c7297:\n      uVar49 = *(uint *)view;\n      uVar26 = (uVar49 & 0xff0000) >> 8;\n      uVar23 = uVar49 >> 0x18 | uVar26;\n      uVar49 = uVar23 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n      local_c8 = (uint)local_c0;\n      if (bVar61 != false) {\n        if (uVar21 == 0xac) {\n          local_c0._0_4_ = uVar49 * 4 & 0x1fc;\n        }\n        else {\n          local_c0._0_4_ = uVar23 - 0x10000;\n          if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }\n        }\n      }\n      goto LAB_002c72d4;\n    case 9:\n    case 0x66:\n    case 0x8a:\n      goto switchD_002c5379_caseD_9;\n    case 10:\n      goto LAB_002c6a55;\n    case 0xb:\n    case 0x67:\n    case 0x8e:\n      goto switchD_002c5379_caseD_b;\n    case 0xc:\n      goto switchD_002c5379_caseD_c;\n    case 0x12:\n      goto switchD_002c5379_caseD_12;\n    case 0x13:\n    case 0x91:\n    case 0xf9:\n      goto switchD_002c5379_caseD_13;\n    case 0x14:\n    case 0x92:\n      goto switchD_002c5379_caseD_14;\n    case 0x15:\n    case 0x93:\n      goto switchD_002c5379_caseD_15;\n    case 0x16:\n    case 0x1e:\n    case 0x94:\n    case 0x99:\n      goto switchD_002c5379_caseD_16;\n    case 0x17:\n    case 0x1f:\n    case 0x95:\n    case 0x9a:\n      goto switchD_002c5379_caseD_17;\n    case 0x18:\n    case 0x96:\n      local_c0._0_4_ = local_c8;\n      if (bVar61 != false) {\n        uVar10 = *(undefined8 *)view;\n        local_c0._0_4_ =\n             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }\n      goto LAB_002c6b1a;\n    case 0x1c:\n    case 0x97:\n      goto LAB_002c59bd;\n    case 0x1d:\n    case 0x98:\n      goto LAB_002c6b55;\n    case 0x25:\n    case 0x9c:\n      goto switchD_002c5379_caseD_25;\n    case 0x27:\n    case 0x29:\n      goto switchD_002c5379_caseD_27;\n    case 0x2a:\n    case 0x6a:\n    case 0xa2:\n      goto switchD_002c5379_caseD_2a;\n    case 0x2b:\n    case 0x6b:\n    case 0xa3:\n      goto switchD_002c5379_caseD_2b;\n    case 0x2c:\n    case 0x6c:\n    case 0xa4:\n      goto switchD_002c5379_caseD_2c;\n    case 0x2d:\n    case 0x6d:\n    case 0xa5:\n      goto switchD_002c5379_caseD_2d;\n    case 0x2e:\n    case 0x6e:\n    case 0xa6:\n      goto switchD_002c5379_caseD_2e;\n    case 0x2f:\n    case 0x30:\n      goto switchD_002c5379_caseD_2f;\n    case 0x31:\n    case 0x6f:\n    case 0xa9:\n      goto switchD_002c5379_caseD_31;\n    case 0x32:\n    case 0x70:\n    case 0xaa:\n      goto switchD_002c5379_caseD_32;\n    case 0x3c:\n      goto LAB_002c6f06;\n    case 0x3d:\n      goto LAB_002c6fd2;\n    case 0x3e:\n      goto LAB_002c6d53;\n    case 0x3f:\n      goto LAB_002c6e24;\n    case 0x40:\n      goto switchD_002c5379_caseD_40;\n    case 0x41:\n      goto LAB_002c6ccf;\n    case 0x8b:\n      goto LAB_002c6bb8;\n    case 0x8c:\n      goto LAB_002c6c3e;\n    case 0x8d:\n      goto LAB_002c69c5;\n    case 0xf8:\n      if (bVar61 != false) {\n        uVar21 = *(uint *)view;\n        local_c0._0_4_ =\n             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n        goto LAB_002c6ed9;\n      }\nLAB_002c8390:\n      local_c0._0_4_ = local_c8;\n      goto LAB_002c6ed9;\n    }\n  }" { (expression_statement "symval.u_.value = target->gp_->value_;" (assignment_expression "symval.u_.value = target->gp_->value_" (field_expression "symval.u_.value" (field_expression "symval.u_" identifier . field_identifier) . field_identifier) = (field_expression "target->gp_->value_" (field_expression "target->gp_" identifier -> field_identifier) -> field_identifier)) ;) (expression_statement "object = (_List_node_base **)target;" (assignment_expression "object = (_List_node_base **)target" identifier = (cast_expression "(_List_node_base **)target" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (if_statement "if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63;\n  uVar49 = (uint)(byte)cVar47;\n  if (this->calculate_only_ == false) {\n    this->calculate_only_ = (bool)cVar47;\n    switch(uVar21) {\n    default:\n      goto switchD_002c5379_caseD_0;\n    case 1:\n      local_c0._0_4_ = local_c8;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      if (bVar61 != false) {\n        local_c0._0_4_ = (uint)uVar19;\n        if ((short)uVar19 < 0) {\n          local_c0._0_4_ = uVar19 - 0x10000;\n        }\n      }\n      goto LAB_002c70ec;\n    case 2:\n      goto switchD_002c5379_caseD_2;\n    case 3:\n      goto switchD_002c4f87_caseD_3;\n    case 4:\n    case 100:\n    case 0x85:\n      bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n      local_c0 = (ulong)local_c8;\n      uVar49 = *(uint *)view;\n      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8;\n      uVar26 = uVar23 | uVar49 << 0x18;\n      if (bVar61 == false) {\nLAB_002c7644:\n        bVar16 = bVar61;\n        if (bVar64 == false) {\nLAB_002c764c:\n          uVar57 = SUB81(pTVar54,0);\n          bVar64 = gsym == (Sized_symbol<32> *)0x0;\n          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;\n          if (bVar64) {\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n          uVar49 = (uint)local_c0 & 0x7ffffff;\n          if ((local_c0 & 0x4000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }\n          goto LAB_002c73f5;\n        }\nLAB_002c7cf3:\n        bVar61 = bVar16;\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n        if ((VVar20 & 3) == (uint)(uVar21 == 4)) goto LAB_002c764c;\n        pcVar28 = (char *)gettext("JALX to a non-word-aligned address");\n        gold::gold_warning(pcVar28);\nLAB_002c7d32:\n        SVar27 = STATUS_BAD_RELOC;\n      }\n      else {\n        if (uVar21 == 0x85) {\n          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;\n          goto LAB_002c7644;\n        }\n        local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);\n        bVar16 = bVar64;\n        if (bVar64 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n        uVar57 = SUB81(pTVar54,0);\n        bVar64 = gsym == (Sized_symbol<32> *)0x0;\n        if (bVar64) {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = 0xf0000000;\nLAB_002c73e1:\n          bVar64 = true;\n          uVar49 = address + 4 & uVar49 | (uint)local_c0;\n        }\n        else {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }\nLAB_002c73f5:\n        object = (_List_node_base **)this_00;\n        pSVar34 = (Sized_symbol<32> *)psymval;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n        uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);\n        pSVar44 = extraout_RDX_00;\n        if (((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;\n          goto LAB_002c5940;\n        }\n        uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;\n        object = (_List_node_base **)(ulong)uVar23;\n        if (local_e3 != 0) {\n          uVar26 = uVar26 >> 0x1a;\n          uVar46 = (undefined7)((ulong)pSVar44 >> 8);\n          if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }\n          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }\n          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;\n        }\n        if (gold::parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);\n        }\n        if (!bVar62 || !bVar63) goto LAB_002c5ccb;\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = uVar23;\n      }\n      goto LAB_002c5940;\n    case 5:\n    case 0x68:\n    case 0x86:\n      goto switchD_002c5379_caseD_5;\n    case 6:\n    case 0x69:\n    case 0x87:\n    case 0x9d:\n      local_c0 = (ulong)local_c8;\n      in_stack_fffffffffffffed0 = *(uint *)view;\n      uVar23 = (in_stack_fffffffffffffed0 & 0xff0000) >> 8;\n      uVar49 = in_stack_fffffffffffffed0 >> 0x18 | uVar23;\n      in_stack_fffffffffffffee0 = (_List_node_base *)(ulong)uVar49;\n      if (bVar61 != false) {\n        object = (_List_node_base **)(ulong)uVar49;\n        uVar26 = uVar49 - 0x10000;\n        if ((uVar23 & 0x8000) == 0) {\n          uVar26 = uVar49;\n        }\n        local_c0 = (ulong)uVar26;\n      }\n      goto LAB_002c7171;\n    case 7:\n    case 8:\n    case 0x65:\n    case 0x88:\n    case 0x89:\n    case 0xac:\n      local_c0._0_4_ = local_c8;\n      pSVar34 = target->gp_;\n      if (pSVar34 != (Sized_symbol<32> *)0x0) goto LAB_002c7253;\n      VVar39 = 0;\nLAB_002c7297:\n      uVar49 = *(uint *)view;\n      uVar26 = (uVar49 & 0xff0000) >> 8;\n      uVar23 = uVar49 >> 0x18 | uVar26;\n      uVar49 = uVar23 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n      local_c8 = (uint)local_c0;\n      if (bVar61 != false) {\n        if (uVar21 == 0xac) {\n          local_c0._0_4_ = uVar49 * 4 & 0x1fc;\n        }\n        else {\n          local_c0._0_4_ = uVar23 - 0x10000;\n          if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }\n        }\n      }\n      goto LAB_002c72d4;\n    case 9:\n    case 0x66:\n    case 0x8a:\n      goto switchD_002c5379_caseD_9;\n    case 10:\n      goto LAB_002c6a55;\n    case 0xb:\n    case 0x67:\n    case 0x8e:\n      goto switchD_002c5379_caseD_b;\n    case 0xc:\n      goto switchD_002c5379_caseD_c;\n    case 0x12:\n      goto switchD_002c5379_caseD_12;\n    case 0x13:\n    case 0x91:\n    case 0xf9:\n      goto switchD_002c5379_caseD_13;\n    case 0x14:\n    case 0x92:\n      goto switchD_002c5379_caseD_14;\n    case 0x15:\n    case 0x93:\n      goto switchD_002c5379_caseD_15;\n    case 0x16:\n    case 0x1e:\n    case 0x94:\n    case 0x99:\n      goto switchD_002c5379_caseD_16;\n    case 0x17:\n    case 0x1f:\n    case 0x95:\n    case 0x9a:\n      goto switchD_002c5379_caseD_17;\n    case 0x18:\n    case 0x96:\n      local_c0._0_4_ = local_c8;\n      if (bVar61 != false) {\n        uVar10 = *(undefined8 *)view;\n        local_c0._0_4_ =\n             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }\n      goto LAB_002c6b1a;\n    case 0x1c:\n    case 0x97:\n      goto LAB_002c59bd;\n    case 0x1d:\n    case 0x98:\n      goto LAB_002c6b55;\n    case 0x25:\n    case 0x9c:\n      goto switchD_002c5379_caseD_25;\n    case 0x27:\n    case 0x29:\n      goto switchD_002c5379_caseD_27;\n    case 0x2a:\n    case 0x6a:\n    case 0xa2:\n      goto switchD_002c5379_caseD_2a;\n    case 0x2b:\n    case 0x6b:\n    case 0xa3:\n      goto switchD_002c5379_caseD_2b;\n    case 0x2c:\n    case 0x6c:\n    case 0xa4:\n      goto switchD_002c5379_caseD_2c;\n    case 0x2d:\n    case 0x6d:\n    case 0xa5:\n      goto switchD_002c5379_caseD_2d;\n    case 0x2e:\n    case 0x6e:\n    case 0xa6:\n      goto switchD_002c5379_caseD_2e;\n    case 0x2f:\n    case 0x30:\n      goto switchD_002c5379_caseD_2f;\n    case 0x31:\n    case 0x6f:\n    case 0xa9:\n      goto switchD_002c5379_caseD_31;\n    case 0x32:\n    case 0x70:\n    case 0xaa:\n      goto switchD_002c5379_caseD_32;\n    case 0x3c:\n      goto LAB_002c6f06;\n    case 0x3d:\n      goto LAB_002c6fd2;\n    case 0x3e:\n      goto LAB_002c6d53;\n    case 0x3f:\n      goto LAB_002c6e24;\n    case 0x40:\n      goto switchD_002c5379_caseD_40;\n    case 0x41:\n      goto LAB_002c6ccf;\n    case 0x8b:\n      goto LAB_002c6bb8;\n    case 0x8c:\n      goto LAB_002c6c3e;\n    case 0x8d:\n      goto LAB_002c69c5;\n    case 0xf8:\n      if (bVar61 != false) {\n        uVar21 = *(uint *)view;\n        local_c0._0_4_ =\n             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n        goto LAB_002c6ed9;\n      }\nLAB_002c8390:\n      local_c0._0_4_ = local_c8;\n      goto LAB_002c6ed9;\n    }" if (parenthesized_expression "(((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63;\n  uVar49 = (uint)(byte)cVar47;\n  if (this->calculate_only_ == false) {\n    this->calculate_only_ = (bool)cVar47;\n    switch(uVar21)" ( (parenthesized_expression "((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63;\n  uVar49 = (uint)(byte)cVar47;\n  if (this->calculate_only_ == false) {\n    this->calculate_only_ = (bool)cVar47;\n    switch(uVar21)" ( (assignment_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63;\n  uVar49 = (uint)(byte)cVar47;\n  if (this->calculate_only_ == false) {\n    this->calculate_only_ = (bool)cVar47" (field_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63;\n  uVar49 = (uint)(byte)cVar47;\n  if (this->calculate_only_ == false) {\n    this->calculate_only_" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63;\n  uVar49 = (uint)(byte)cVar47;\n  if (this->calculate_only_ == false)" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63;\n  uVar49 = (uint)(byte)" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63;\n  uVar49 = (uint)" (binary_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0;\n  cVar47 = bVar62 && bVar63" (binary_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48;\n  bVar63 = local_c4 != 0" (assignment_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0) goto LAB_002c5380;\n  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;\n  bVar62 = local_b0 == uVar48" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)object;\n  if (uVar21 == 0)" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n  iVar25 = (int)" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20)" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0];\nLAB_002c4f1d:\n  uVar65 = (undefined4)" (subscript_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0;\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types[0]" (assignment_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2] = 0" (subscript_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0;\n  r_types[2]" (assignment_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1] = 0" (subscript_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9;\n  r_types[1]" (binary_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0];\n  bVar61 = rel_type == 9" (assignment_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;\n  }\n  uVar60 = r_types[0]" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60;\n    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0))" (assignment_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0] = uVar60" (subscript_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_e2 = false;\nLAB_002c55ef:\n    r_types[0]" (assignment_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2] = 0" (subscript_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0;\n    r_types[2]" (assignment_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1] = 0" (subscript_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types[1]" (binary_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;\n      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82)" (binary_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);\n      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82)" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc)" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n      uVar43 = (ulong)" (assignment_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29) {\n      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))\n    goto LAB_002c4e81;\nLAB_002c5579:\n    if (uVar60 - 0x85 < 0x29)" (call_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);\n    if ((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))" (parenthesized_expression "(target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false)" ( (comma_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(&gsym->super_Symbol" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |\n               (uVar19 & 0xf800) << 0x10" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)(uVar19 & 0x7e0)" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);\n      uVar21 = (uint)" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb)" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0;\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object = (_List_node_base **)" (assignment_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100) {\n        local_f4 = 0" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if (uVar60 == 100)" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff;\n        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0)" (assignment_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29) {\n        object = (_List_node_base **)0x1b3e1fff3ff" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60;\n      if (uVar60 - 0x85 < 0x29)" (assignment_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0] = uVar60" (subscript_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\n      r_types[0]" (assignment_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)uVar19;\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      uVar21 = (uint)" (assignment_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4) goto LAB_002c55ef;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0;\n      if (0xc < local_f4)" (assignment_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2] = 0" (subscript_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0;\n      r_types[2]" (assignment_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1] = 0" (subscript_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85);\n      r_types[1]" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)(uVar60 - 0x85)" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100;\n      uVar43 = (ulong)" (assignment_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4 = uVar60 - 100" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);\n      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2))" (assignment_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {\n      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true)" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)bVar61;\n    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0')" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)(ulong)" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0;\n    object = (_List_node_base **)" (assignment_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)uVar21;\n    bVar61 = uVar21 != 0" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_;\n    sVar56 = (size_t)" (assignment_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))\n      goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21 = (gsym->super_Symbol).dynsym_index_" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62;\n      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1) & bVar62" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0;\n    }\n    else {\n      local_e3 = (bVar18 ^ 1)" (assignment_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61) {\n      local_e3 = 0" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);\n    if (bVar61)" (call_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58;\n  if (gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol)" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&\n             (object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0))" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0)" (field_expression "target->got_" identifier -> field_identifier) != (parenthesized_expression "(Mips_output_data_got<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_got<32,_true> *)0x0" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) && (parenthesized_expression "(target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0))" ( (binary_expression "target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)" (field_expression "target->got_->primary_got_" (field_expression "target->got_" identifier -> field_identifier) -> field_identifier) != (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) ))) && (assignment_expression "(object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)uVar21;\n  bVar18 = (byte)puVar58" (parenthesized_expression "(object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28);\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte)" ( (comma_expression "object = (_List_node_base **)this_00,\n             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28)" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) , (assignment_expression "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value =\n                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28)" (field_expression "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_.value" (field_expression "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            symval.u_" (parenthesized_expression "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0))" ( (comma_expression "Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)" (binary_expression "_true> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier))) != (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )))) )) (ERROR "{\n            symval" { identifier) . field_identifier) . field_identifier) = (binary_expression "symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28)" (field_expression "symval.u_.value" (field_expression "symval.u_" identifier . field_identifier) . field_identifier) + (parenthesized_expression "((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");\n      gold::gold_error(pcVar28)" ( (ERROR "(Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }" (field_expression "(Mips_got_info<32,_true> *)this_00->got_info_)->offset_" (parenthesized_expression "(Mips_got_info<32,_true> *)this_00->got_info_)" ( (comma_expression "Mips_got_info<32,_true> *)this_00->got_info_" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier)))) )) -> field_identifier) ; } }) (assignment_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0') {\nLAB_002c532c:\n      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other")" (call_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2) {\nLAB_002c5320:\n    if ((char)puVar58 != '\0')" (call_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61;\n  if (uVar60 - 0x8b < 2)" (assignment_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62 = bVar61" (call_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62;\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if ((uVar49 & 0xf7) == 0x85)" (assignment_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false) {\n    uVar21 = (uint)bVar62" (call_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61);\njoined_r0x002c52d3:\n  if (bVar62 != false)" (assignment_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61)" (call_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false;\n    bVar62 = false;\n    if ((uVar49 & 0xf7) != 0x85)" (assignment_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1) goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0 = (Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false" (call_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 == -1)" (binary_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4)" (assignment_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1) {\n          bVar61 = false" (call_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n        if (iVar25 == -1)" (assignment_expression "psymval = (Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4)" identifier = (assignment_expression "(Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {\n        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4)" (call_expression "(Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0) {\n      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0'))" (parenthesized_expression "(Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100) {\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0)" ( (ERROR "Symbol_value<32> *)local_d0;\n      }\nLAB_002c5078:\n      local_f8 = 0;\n    }\n    if (uVar60 == 100)" (binary_expression "Symbol_value<32> *)local_d0" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)local_d0" * (ERROR ")" )) identifier)) ; } identifier : (call_expression "local_f8 = 0;\n    }\n    if (uVar60 == 100)" (assignment_expression "local_f8 = 0" identifier = number_literal) (ERROR ";\n    }\n    if" ; } if) (argument_list "(uVar60 == 100)" ( (binary_expression "uVar60 == 100" identifier == number_literal) )))) (compound_statement "{\n      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;\n      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\n      pMVar42 = pMVar53;\n      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;\n      uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;\n      if (uVar23 < 2) goto LAB_002c5870;\n      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;\n      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;\n      if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }\nLAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }" { (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_" ( (comma_expression "Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)gsym[1].super_Symbol.got_offsets_.got_next_" identifier > (pointer_expression "*)gsym[1].super_Symbol.got_offsets_.got_next_" * (ERROR ")" )) (field_expression "gsym[1].super_Symbol.got_offsets_.got_next_" (field_expression "gsym[1].super_Symbol.got_offsets_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier)))) ))) ;) (if_statement "if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }" if (parenthesized_expression "(pMVar53 == (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar53 == (Mips_relobj<32,_false> *)0x0)" identifier == (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\n        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;\n        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }" { (if_statement "if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;" if (parenthesized_expression "(*(long *)&gsym[1].super_Symbol.field_0x38 == 0)" ( (binary_expression "*(long *)&gsym[1].super_Symbol.field_0x38 == 0" (pointer_expression "*(long *)&gsym[1].super_Symbol.field_0x38" * (cast_expression "(long *)&gsym[1].super_Symbol.field_0x38" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "&gsym[1].super_Symbol.field_0x38" & (field_expression "gsym[1].super_Symbol.field_0x38" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier)))) == number_literal) )) (goto_statement "goto LAB_002c4d83;" goto statement_identifier ;)) (if_statement "if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;" if (parenthesized_expression "((gsym->super_Symbol).plt_offset_ == 0xffffffff)" ( (binary_expression "(gsym->super_Symbol).plt_offset_ == 0xffffffff" (field_expression "(gsym->super_Symbol).plt_offset_" (parenthesized_expression "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) )) . field_identifier) == number_literal) )) (goto_statement "goto LAB_002c82c9;" goto statement_identifier ;)) (goto_statement "goto LAB_002c5869;" goto statement_identifier ;) })) (if_statement "if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))\n      goto LAB_002c4d83;" if (parenthesized_expression "(((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))" ( (binary_expression "((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0')" (parenthesized_expression "((gsym->super_Symbol).plt_offset_ == 0xffffffff)" ( (binary_expression "(gsym->super_Symbol).plt_offset_ == 0xffffffff" (field_expression "(gsym->super_Symbol).plt_offset_" (parenthesized_expression "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) )) . field_identifier) == number_literal) )) && (parenthesized_expression "((char)puVar58 != '\0')" ( (binary_expression "(char)puVar58 != '\0'" (cast_expression "(char)puVar58" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_002c4d83;" goto statement_identifier ;)) (expression_statement "pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;" (assignment_expression "pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38" identifier = (binary_expression "*(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38" (pointer_expression "*(Mips_relobj<32,_false> **)" * (parenthesized_expression "(Mips_relobj<32,_false> **)" ( (comma_expression "Mips_relobj<32,_false> **" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) ))) & (field_expression "gsym[1].super_Symbol.field_0x38" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) ;) (expression_statement "pMVar42 = pMVar53;" (assignment_expression "pMVar42 = pMVar53" identifier = identifier) ;) (if_statement "if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;" if (parenthesized_expression "(pMVar35 == (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar35 == (Mips_relobj<32,_false> *)0x0)" identifier == (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;)) (expression_statement "uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_;" (assignment_expression "uVar23 = (((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_" identifier = (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_" ( (field_expression "((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.shnum_" (field_expression "((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(this_00->super_Sized_relobj_file<32,_false>)" ( (comma_expression "this_00->super_Sized_relobj_file<32,_false" (binary_expression "this_00->super_Sized_relobj_file<32" (field_expression "this_00->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) ))) ;) (if_statement "if (uVar23 < 2) goto LAB_002c5870;" if (parenthesized_expression "(uVar23 < 2)" ( (binary_expression "uVar23 < 2" identifier < number_literal) )) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;)) (expression_statement "p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p;" (field_expression "p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base._M_p" (field_expression "p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start\n                .super__Bit_iterator_base" (field_expression "p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start" (field_expression "p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool>_" (binary_expression "p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std::allocator<bool" (assignment_expression "p_Var12 = (this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std" identifier = (binary_expression "(this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base<std" (field_expression "(this_00->section_is_mips16_call_fp_stub_).\n                super__Bvector_base" (parenthesized_expression "(this_00->section_is_mips16_call_fp_stub_)" ( (field_expression "this_00->section_is_mips16_call_fp_stub_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) ;) (expression_statement "uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset;" (field_expression "uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base._M_offset" (field_expression "uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start.super__Bit_iterator_base" (field_expression "uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_start" (field_expression "uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_" (binary_expression "uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool" (assignment_expression "uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std" identifier = (binary_expression "((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std" (binary_expression "((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -\n               (ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base" (parenthesized_expression "((ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8)" ( (binary_expression "(ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset +\n               ((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8" (field_expression "(ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base._M_offset" (field_expression "(ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish.super__Bit_iterator_base" (field_expression "(ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                       _M_finish" (field_expression "(ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "(ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "(ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool>_" (binary_expression "(ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std::allocator<bool" (binary_expression "(ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base<std" (field_expression "(ulong)(this_00->section_is_mips16_call_fp_stub_).\n                       super__Bvector_base" (call_expression "(ulong)(this_00->section_is_mips16_call_fp_stub_)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(this_00->section_is_mips16_call_fp_stub_)" ( (field_expression "this_00->section_is_mips16_call_fp_stub_" identifier -> field_identifier) ))) . field_identifier) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) + (binary_expression "((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8" (parenthesized_expression "((long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12)" ( (binary_expression "(long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12" (field_expression "(long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base._M_p" (field_expression "(long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish.super__Bit_iterator_base" (field_expression "(long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.\n                      _M_finish" (field_expression "(long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data" (field_expression "(long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_>._M_impl" (binary_expression "(long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool>_" (binary_expression "(long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std::allocator<bool" (binary_expression "(long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base<std" (cast_expression "(long)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base" (parenthesized_expression "(this_00->section_is_mips16_call_fp_stub_)" ( (field_expression "this_00->section_is_mips16_call_fp_stub_" identifier -> field_identifier) )) . field_identifier)) < identifier) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) - (cast_expression "(long)p_Var12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )) * number_literal)) )) - (field_expression "(ulong)(this_00->section_is_mips16_call_fp_stub_).\n                      super__Bvector_base" (call_expression "(ulong)(this_00->section_is_mips16_call_fp_stub_)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(this_00->section_is_mips16_call_fp_stub_)" ( (field_expression "this_00->section_is_mips16_call_fp_stub_" identifier -> field_identifier) ))) . field_identifier)) < identifier)) (ERROR "::allocator" : : identifier) < identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) . field_identifier) ;) (if_statement "if (1 < uVar43) {\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }" if (parenthesized_expression "(1 < uVar43)" ( (binary_expression "1 < uVar43" number_literal < identifier) )) (compound_statement "{\n        sVar56 = 1;\n        uVar29 = 1;\n        do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);\n      }" { (expression_statement "sVar56 = 1;" (assignment_expression "sVar56 = 1" identifier = number_literal) ;) (expression_statement "uVar29 = 1;" (assignment_expression "uVar29 = 1" identifier = number_literal) ;) (do_statement "do {\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        } while (uVar29 != uVar43);" do (compound_statement "{\n          pMVar42 = pMVar35;\n          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;\n          pMVar42 = pMVar53;\n          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;\n          uVar29 = uVar29 + 1;\n        }" { (expression_statement "pMVar42 = pMVar35;" (assignment_expression "pMVar42 = pMVar35" identifier = identifier) ;) (if_statement "if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;" if (parenthesized_expression "((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0)" ( (binary_expression "(p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0" (parenthesized_expression "(p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f))" ( (binary_expression "p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)" (subscript_expression "p_Var12[uVar29 >> 6]" identifier [ (binary_expression "uVar29 >> 6" identifier >> number_literal) ]) & (binary_expression "1L << ((byte)uVar29 & 0x3f)" number_literal << (parenthesized_expression "((byte)uVar29 & 0x3f)" ( (binary_expression "(byte)uVar29 & 0x3f" (cast_expression "(byte)uVar29" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) )) != number_literal) )) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;)) (expression_statement "pMVar42 = pMVar53;" (assignment_expression "pMVar42 = pMVar53" identifier = identifier) ;) (if_statement "if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;" if (parenthesized_expression "(uVar29 == (ulong)(uVar23 - 2) + 1)" ( (binary_expression "uVar29 == (ulong)(uVar23 - 2) + 1" identifier == (binary_expression "(ulong)(uVar23 - 2) + 1" (call_expression "(ulong)(uVar23 - 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar23 - 2)" ( (binary_expression "uVar23 - 2" identifier - number_literal) ))) + number_literal)) )) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;)) (expression_statement "uVar29 = uVar29 + 1;" (assignment_expression "uVar29 = uVar29 + 1" identifier = (binary_expression "uVar29 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar29 != uVar43)" ( (binary_expression "uVar29 != uVar43" identifier != identifier) )) ;) })) (labeled_statement "LAB_002c81a7:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");" statement_identifier : comment (labeled_statement "gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");" (call_expression "do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section")" identifier (argument_list "("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""is_mips16_call_fp_stub_section"" " string_content ") ))) ;))) }) (ERROR "lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;\n    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;\n    if (lVar40 != 0" identifier . identifier = identifier [ number_literal ] . identifier . identifier . identifier ; identifier . identifier = identifier [ number_literal ] . identifier . identifier . identifier ; if ( identifier != number_literal) )) (ERROR "{\n      if" { if) (argument_list "((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0'))" ( (binary_expression "(uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')" (parenthesized_expression "(uVar60 == 0x67)" ( (binary_expression "uVar60 == 0x67" identifier == number_literal) )) && (parenthesized_expression "(*(char *)&gsym[1].super_Symbol.name_ == '\0')" ( (binary_expression "*(char *)&gsym[1].super_Symbol.name_ == '\0'" (pointer_expression "*(char *)&gsym[1].super_Symbol.name_" * (cast_expression "(char *)&gsym[1].super_Symbol.name_" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&gsym[1].super_Symbol.name_" & (field_expression "gsym[1].super_Symbol.name_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier)))) == (char_literal "'\0'" ' escape_sequence ')) ))) ))) (ERROR "{\n        iVar25" { identifier) = (pointer_expression "*(int *)((long)&gsym[1].super_Symbol.name_ + 4)" * (cast_expression "(int *)((long)&gsym[1].super_Symbol.name_ + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&gsym[1].super_Symbol.name_ + 4)" ( (binary_expression "(long)&gsym[1].super_Symbol.name_ + 4" (cast_expression "(long)&gsym[1].super_Symbol.name_" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&gsym[1].super_Symbol.name_" & (field_expression "gsym[1].super_Symbol.name_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) + number_literal) )))))) (ERROR ";\n        if" ; if) (argument_list "(iVar25 == -1)" ( (binary_expression "iVar25 == -1" identifier == number_literal) ))) (ERROR "{\n          bVar61" { identifier) = false) (ERROR ";\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  iVar25 =" ; goto identifier ; } goto identifier ; } goto identifier ; } } identifier =) * (cast_expression "(int *)((long)&gsym[1].super_Symbol.name_ + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&gsym[1].super_Symbol.name_ + 4)" ( (binary_expression "(long)&gsym[1].super_Symbol.name_ + 4" (cast_expression "(long)&gsym[1].super_Symbol.name_" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&gsym[1].super_Symbol.name_" & (field_expression "gsym[1].super_Symbol.name_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) + number_literal) )))) (ERROR ";\n  if" ; if) (argument_list "(iVar25 == -1)" ( (binary_expression "iVar25 == -1" identifier == number_literal) ))) (ERROR "goto LAB_002c52f0;\nLAB_002c5256:\n  local_d0" identifier identifier ; identifier : identifier) = (assignment_expression "(Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61) {\n    bVar61 = false" (parenthesized_expression "(Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0) {\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }\nLAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61)" ( (ERROR "Mips_relobj<32,_false> *)&symval;\n  if ((this_00->field_0x36c & 1) == 0)" (comma_expression "Mips_relobj<32,_false> *)&symval" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)&symval" identifier > (pointer_expression "*)&symval" * (ERROR ")" )) (pointer_expression "&symval" & identifier)))) ; if (parenthesized_expression "((this_00->field_0x36c & 1) == 0)" ( (binary_expression "(this_00->field_0x36c & 1) == 0" (parenthesized_expression "(this_00->field_0x36c & 1)" ( (binary_expression "this_00->field_0x36c & 1" (field_expression "this_00->field_0x36c" identifier -> field_identifier) & number_literal) )) == number_literal) ))) (compound_statement "{\n    object = (_List_node_base **)((ulong)puVar58 & 0xff);\n    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;\n    bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));\n    if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }\n  }" { (expression_statement "object = (_List_node_base **)((ulong)puVar58 & 0xff);" (assignment_expression "object = (_List_node_base **)((ulong)puVar58 & 0xff)" identifier = (cast_expression "(_List_node_base **)((ulong)puVar58 & 0xff)" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((ulong)puVar58 & 0xff)" ( (binary_expression "(ulong)puVar58 & 0xff" (cast_expression "(ulong)puVar58" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)(ulong)" identifier = (call_expression "(Mips_relobj<32,_false> *)(ulong)" (parenthesized_expression "(Mips_relobj<32,_false> *)" ( (comma_expression "Mips_relobj<32,_false> *" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "(ulong)" ( identifier )))) (ERROR "uVar60" identifier) ;) (expression_statement "bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));" (comma_expression "bVar61 = relocation_needs_la25_stub<32,_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0))" (assignment_expression "bVar61 = relocation_needs_la25_stub<32" identifier = (binary_expression "relocation_needs_la25_stub<32" identifier < number_literal)) , (binary_expression "_true>\n                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0))" identifier > (parenthesized_expression "((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0))" ( (parenthesized_expression "(Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0))" ( (comma_expression "Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0)" (binary_expression "Mips_relobj<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,(uint)object,SUB41(iVar25,0)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "(uint)object,SUB41(iVar25,0)" (cast_expression "(uint)object" ( (type_descriptor "uint" type_identifier) ) identifier) , (call_expression "SUB41(iVar25,0)" identifier (argument_list "(iVar25,0)" ( identifier , number_literal )))))) )) )))) ;) (if_statement "if (bVar61) {\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }" if (parenthesized_expression "(bVar61)" ( identifier )) (compound_statement "{\n      pMVar8 = target->la25_stub_;\n      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }\n      la25_stub_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8217;\n    }" { (expression_statement "pMVar8 = target->la25_stub_;" (assignment_expression "pMVar8 = target->la25_stub_" identifier = (field_expression "target->la25_stub_" identifier -> field_identifier)) ;) (if_statement "if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }" if (parenthesized_expression "(pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0)" ( (binary_expression "pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0)" identifier != (parenthesized_expression "(Mips_output_data_la25_stub<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_la25_stub<32,_true> *)0x0" (binary_expression "Mips_output_data_la25_stub<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\n        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }\n        local_98._0_1_ = (byte)uVar21;\n        bVar61 = uVar60 == 100;\n        symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);\n        bVar62 = (bool)((byte)local_98 & bVar61);\n        psymval = (Symbol_value<32> *)local_d0;\n        object = (_List_node_base **)local_d0;\n        goto joined_r0x002c52d3;\n      }" { (if_statement "if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }" if (parenthesized_expression "(((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0)" ( (binary_expression "((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0" (parenthesized_expression "((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1)" ( (binary_expression "(pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1" (field_expression "(pMVar8->super_Output_section_data).super_Output_data.field_0x20" (field_expression "(pMVar8->super_Output_section_data).super_Output_data" (parenthesized_expression "(pMVar8->super_Output_section_data)" ( (field_expression "pMVar8->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);\n        }" { comment (expression_statement "Mips_output_data_plt<64,_false>::mips_entry_address\n                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);" (comma_expression "Mips_output_data_plt<64,_false>::mips_entry_address" (binary_expression "Mips_output_data_plt<64" identifier < number_literal) , (binary_expression "_false>::mips_entry_address" identifier > (ERROR "::" : :) identifier)) (ERROR "((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object)" ( ( (comma_expression "Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object)" (binary_expression "Mips_output_data_plt<64" identifier < number_literal) , (comma_expression "_false> *)pMVar53,(Mips_symbol<64> *)object)" (binary_expression "_false> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (parenthesized_expression "(Mips_symbol<64> *)object)" ( (binary_expression "Mips_symbol<64> *)object" (binary_expression "Mips_symbol<64" identifier < number_literal) > (pointer_expression "*)object" * (ERROR ")" )) identifier)) ))))) ;) })) (expression_statement "local_98._0_1_ = (byte)uVar21;" (assignment_expression "local_98._0_1_ = (byte)uVar21" (field_expression "local_98._0_1_" identifier . field_identifier) = (cast_expression "(byte)uVar21" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (expression_statement "bVar61 = uVar60 == 100;" (assignment_expression "bVar61 = uVar60 == 100" identifier = (binary_expression "uVar60 == 100" identifier == number_literal)) ;) (expression_statement "symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);" (assignment_expression "symval.u_.value =\n             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20)" (field_expression "symval.u_.value" (field_expression "symval.u_" identifier . field_identifier) . field_identifier) = (binary_expression "extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +\n             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20)" (binary_expression "extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_" identifier + (cast_expression "(int)(pMVar8->super_Output_section_data).super_Output_data.address_" ( (type_descriptor "int" primitive_type) ) (field_expression "(pMVar8->super_Output_section_data).super_Output_data.address_" (field_expression "(pMVar8->super_Output_section_data).super_Output_data" (parenthesized_expression "(pMVar8->super_Output_section_data)" ( (field_expression "pMVar8->super_Output_section_data" identifier -> field_identifier) )) . field_identifier) . field_identifier))) + (call_expression "(uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20)" ( (binary_expression "((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20" (parenthesized_expression "((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30)" ( (binary_expression "(byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30" (binary_expression "(byte)(gsym->super_Symbol).field_0x39 >> 2" (field_expression "(byte)(gsym->super_Symbol).field_0x39" (call_expression "(byte)(gsym->super_Symbol)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) ))) . field_identifier) >> number_literal) & number_literal) )) == number_literal) ))))) ;) (expression_statement "bVar62 = (bool)((byte)local_98 & bVar61);" (assignment_expression "bVar62 = (bool)((byte)local_98 & bVar61)" identifier = (cast_expression "(bool)((byte)local_98 & bVar61)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "((byte)local_98 & bVar61)" ( (binary_expression "(byte)local_98 & bVar61" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) & identifier) )))) ;) (expression_statement "psymval = (Symbol_value<32> *)local_d0;" (assignment_expression "psymval = (Symbol_value<32> *)local_d0" identifier = (parenthesized_expression "(Symbol_value<32> *)local_d0" ( (binary_expression "Symbol_value<32> *)local_d0" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)local_d0" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "object = (_List_node_base **)local_d0;" (assignment_expression "object = (_List_node_base **)local_d0" identifier = (cast_expression "(_List_node_base **)local_d0" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (goto_statement "goto joined_r0x002c52d3;" goto statement_identifier ;) })) (expression_statement "la25_stub_section((Target_mips<32,_true> *)pMVar53);" (call_expression "la25_stub_section((Target_mips<32,_true> *)pMVar53)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53)" ( (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ))) ;) (goto_statement "goto LAB_002c8217;" goto statement_identifier ;) })) }) (ERROR "LAB_002c52f0:\n  bVar61 = uVar60 == 100;\n  if (uVar60 != 0x85 && !bVar61" identifier : identifier = identifier == number_literal ; if ( identifier != number_literal && ! identifier) )) (ERROR "{\n    bVar61" { identifier) = false)) (ERROR ";\n    bVar62 = false;\n    if" ; identifier = false ; if) (argument_list "((uVar49 & 0xf7) != 0x85)" ( (binary_expression "(uVar49 & 0xf7) != 0x85" (parenthesized_expression "(uVar49 & 0xf7)" ( (binary_expression "uVar49 & 0xf7" identifier & number_literal) )) != number_literal) ))) (ERROR "goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c4d98:\n  local_d0" identifier identifier ; goto identifier ; } identifier : identifier) = (assignment_expression "(Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar21;\n  bVar62 = (bool)((byte)local_98 & bVar61)" (parenthesized_expression "(Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)" ( (ERROR "Mips_relobj<32,_false> *)&symval;\n  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff))" (comma_expression "Mips_relobj<32,_false> *)&symval" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)&symval" identifier > (pointer_expression "*)&symval" * (ERROR ")" )) (pointer_expression "&symval" & identifier)))) ; if (parenthesized_expression "((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff))" ( (binary_expression "(((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&\n     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)" (parenthesized_expression "(((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff))" ( (binary_expression "((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&\n      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)" (parenthesized_expression "((gsym->super_Symbol).plt_offset_ != 0xffffffff)" ( (binary_expression "(gsym->super_Symbol).plt_offset_ != 0xffffffff" (field_expression "(gsym->super_Symbol).plt_offset_" (parenthesized_expression "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) )) . field_identifier) != number_literal) )) && (parenthesized_expression "(uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)" ( (comma_expression "uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff" (assignment_expression "uVar23 = gsym[1].super_Symbol.plt_offset_" identifier = (field_expression "gsym[1].super_Symbol.plt_offset_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier)) , (binary_expression "uVar23 != 0xffffffff" identifier != number_literal)) ))) )) && (parenthesized_expression "(gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)" ( (binary_expression "gsym[1].super_Symbol.dynsym_index_ != 0xffffffff" (field_expression "gsym[1].super_Symbol.dynsym_index_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) != number_literal) ))) ))) (compound_statement "{\n    pMVar7 = target->plt_;\n    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }\n    if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }\n    symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];\n    if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }\n    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;\n    psymval = (Symbol_value<32> *)local_d0;\n    puVar58 = (uint *)(ulong)bVar62;\n    uVar21 = (uint)!bVar62;\n    object = (_List_node_base **)target;\n  }" { (expression_statement "pMVar7 = target->plt_;" (assignment_expression "pMVar7 = target->plt_" identifier = (field_expression "target->plt_" identifier -> field_identifier)) ;) (if_statement "if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }" if (parenthesized_expression "(pMVar7 == (Mips_output_data_plt<32,_true> *)0x0)" ( (binary_expression "pMVar7 == (Mips_output_data_plt<32,_true> *)0x0)" identifier == (parenthesized_expression "(Mips_output_data_plt<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_plt<32,_true> *)0x0" (binary_expression "Mips_output_data_plt<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\nLAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);\nLAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");\n    }" { (labeled_statement "LAB_002c833d:\n      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);" statement_identifier : (expression_statement "Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);" (comma_expression "Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::plt_section((Target_mips<32,_true> *)pMVar53)" identifier > (ERROR "::" : :) (call_expression "plt_section((Target_mips<32,_true> *)pMVar53)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53)" ( (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ))))) ;)) (labeled_statement "LAB_002c8342:\n      gold::Symbol::dynsym_index((Symbol *)pMVar53);" statement_identifier : (labeled_statement "gold::Symbol::dynsym_index((Symbol *)pMVar53);" statement_identifier : (ERROR ":" :) (labeled_statement "Symbol::dynsym_index((Symbol *)pMVar53);" statement_identifier : (ERROR ":" :) (expression_statement "dynsym_index((Symbol *)pMVar53);" (call_expression "dynsym_index((Symbol *)pMVar53)" identifier (argument_list "((Symbol *)pMVar53)" ( (cast_expression "(Symbol *)pMVar53" ( (type_descriptor "Symbol *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;)))) (labeled_statement "LAB_002c8347:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");" statement_identifier : comment (labeled_statement "gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");" (call_expression "do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset")" identifier (argument_list "("../../gold/mips.cc",0x895,"get_primary_got_offset")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""get_primary_got_offset"" " string_content ") ))) ;))) })) (if_statement "if ((pMVar7->field_0x20 & 1) == 0) {\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }" if (parenthesized_expression "((pMVar7->field_0x20 & 1) == 0)" ( (binary_expression "(pMVar7->field_0x20 & 1) == 0" (parenthesized_expression "(pMVar7->field_0x20 & 1)" ( (binary_expression "pMVar7->field_0x20 & 1" (field_expression "pMVar7->field_0x20" identifier -> field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);\n    }" { comment (expression_statement "Mips_output_data_plt<64,_false>::mips_entry_address\n                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);" (comma_expression "Mips_output_data_plt<64,_false>::mips_entry_address" (binary_expression "Mips_output_data_plt<64" identifier < number_literal) , (binary_expression "_false>::mips_entry_address" identifier > (ERROR "::" : :) identifier)) (ERROR "((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target)" ( ( (comma_expression "Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target)" (binary_expression "Mips_output_data_plt<64" identifier < number_literal) , (comma_expression "_false> *)pMVar53,(Mips_symbol<64> *)target)" (binary_expression "_false> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (parenthesized_expression "(Mips_symbol<64> *)target)" ( (binary_expression "Mips_symbol<64> *)target" (binary_expression "Mips_symbol<64" identifier < number_literal) > (pointer_expression "*)target" * (ERROR ")" )) identifier)) ))))) ;) })) (expression_statement "symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2];" (assignment_expression "symval.u_.value =\n         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2]" (field_expression "symval.u_.value" (field_expression "symval.u_" identifier . field_identifier) . field_identifier) = (binary_expression "uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +\n         pMVar7->plt0_entry_o32[2]" (binary_expression "uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_" (binary_expression "uVar23 + 1 + pMVar7->plt_header_size_" (binary_expression "uVar23 + 1" identifier + number_literal) + (field_expression "pMVar7->plt_header_size_" identifier -> field_identifier)) + (field_expression "pMVar7->plt_mips_offset_" identifier -> field_identifier)) + (subscript_expression "pMVar7->plt0_entry_o32[2]" (field_expression "pMVar7->plt0_entry_o32" identifier -> field_identifier) [ number_literal ]))) ;) (if_statement "if (target->field_0x14 == '\0') {\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }" if (parenthesized_expression "(target->field_0x14 == '\0')" ( (binary_expression "target->field_0x14 == '\0'" (field_expression "target->field_0x14" identifier -> field_identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);\n    }" { (labeled_statement "LAB_002c83ab:\n                    /* WARNING: Subroutine does not return */\n      is_output_micromips((Target_mips<32,_true> *)pMVar53);" statement_identifier : comment (expression_statement "is_output_micromips((Target_mips<32,_true> *)pMVar53);" (call_expression "is_output_micromips((Target_mips<32,_true> *)pMVar53)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53)" ( (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ))) ;)) })) (expression_statement "bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;" (assignment_expression "bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0" identifier = (binary_expression "(*(uint *)&target->field_0x10 & 0x2000000) == 0" (parenthesized_expression "(*(uint *)&target->field_0x10 & 0x2000000)" ( (binary_expression "*(uint *)&target->field_0x10 & 0x2000000" (pointer_expression "*(uint *)&target->field_0x10" * (cast_expression "(uint *)&target->field_0x10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&target->field_0x10" & (field_expression "target->field_0x10" identifier -> field_identifier)))) & number_literal) )) == number_literal)) ;) (expression_statement "psymval = (Symbol_value<32> *)local_d0;" (assignment_expression "psymval = (Symbol_value<32> *)local_d0" identifier = (parenthesized_expression "(Symbol_value<32> *)local_d0" ( (binary_expression "Symbol_value<32> *)local_d0" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)local_d0" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "puVar58 = (uint *)(ulong)bVar62;" (assignment_expression "puVar58 = (uint *)(ulong)bVar62" identifier = (cast_expression "(uint *)(ulong)bVar62" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)bVar62" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "uVar21 = (uint)!bVar62;" (assignment_expression "uVar21 = (uint)!bVar62" identifier = (cast_expression "(uint)!bVar62" ( (type_descriptor "uint" type_identifier) ) (unary_expression "!bVar62" ! identifier))) ;) (expression_statement "object = (_List_node_base **)target;" (assignment_expression "object = (_List_node_base **)target" identifier = (cast_expression "(_List_node_base **)target" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) }) (ERROR "LAB_002c4e20:\n  local_98._0_1_ = (byte" identifier : identifier . identifier = ( identifier) )) (ERROR "uVar21;\n  bVar62" identifier ; identifier) = (cast_expression "(bool)((byte)local_98 & bVar61)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "((byte)local_98 & bVar61)" ( (binary_expression "(byte)local_98 & bVar61" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) & identifier) ))))) (ERROR ";\njoined_r0x002c52d3:\n  if" ; identifier : if) (argument_list "(bVar62 != false)" ( (binary_expression "bVar62 != false" identifier != false) ))) (ERROR "{\n    uVar21" { identifier) = (cast_expression "(uint)bVar62" ( (type_descriptor "uint" type_identifier) ) identifier)) (ERROR ";\n    goto LAB_002c532c;\n  }\nLAB_002c4e31:\n  bVar62 = bVar61;\n  if" ; goto identifier ; } identifier : identifier = identifier ; if) (argument_list "((uVar49 & 0xf7) == 0x85)" ( (binary_expression "(uVar49 & 0xf7) == 0x85" (parenthesized_expression "(uVar49 & 0xf7)" ( (binary_expression "uVar49 & 0xf7" identifier & number_literal) )) == number_literal) ))) (ERROR "goto LAB_002c5320;\nLAB_002c4e43:\n  bVar62" identifier identifier ; identifier : identifier) = identifier) (ERROR ";\n  if" ; if) (argument_list "(uVar60 - 0x8b < 2)" ( (binary_expression "uVar60 - 0x8b < 2" (binary_expression "uVar60 - 0x8b" identifier - number_literal) < number_literal) ))) (ERROR "{\nLAB_002c5320:\n    if" { identifier : if) (argument_list "((char)puVar58 != '\0')" ( (binary_expression "(char)puVar58 != '\0'" (cast_expression "(char)puVar58" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) ))) (ERROR "{\nLAB_002c532c:\n      pcVar28" { identifier : identifier) = (cast_expression "(char *)gettext("MIPS16 and microMIPS functions cannot call each other")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext("MIPS16 and microMIPS functions cannot call each other")" identifier (argument_list "("MIPS16 and microMIPS functions cannot call each other")" ( (string_literal ""MIPS16 and microMIPS functions cannot call each other"" " string_content ") ))))) (ERROR ";\n      gold::gold_error(pcVar28" ; identifier : : identifier ( identifier) ))))) (ERROR ";\n    }\n  }\nLAB_002c4e56:\n  local_98._0_1_ = (byte" ; } } identifier : identifier . identifier = ( identifier) )) (ERROR "uVar21;\n  bVar18" identifier ; identifier) = (cast_expression "(byte)puVar58" ( (type_descriptor "byte" type_identifier) ) identifier))) (ERROR ";\n  if" ; if) (argument_list "(gsym == (Sized_symbol<32> *)0x0) {\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }\n  else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol)" ( (ERROR "gsym == (Sized_symbol<32> *)0x0)" (binary_expression "gsym == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) )))) (compound_statement "{\n    local_e3 = (bVar18 ^ 1) & bVar62;\n    local_e2 = (bool)local_e3;\n    if ((bool)local_e3 != false) goto LAB_002c4e81;\n    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;\n    if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }\n    r_types[0] = 0x85;\n    r_types[1] = 0;\n    r_types[2] = 0;\n    local_f4 = 0x21;\n    local_e2 = (bool)local_e3;\nLAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }\n  }" { (expression_statement "local_e3 = (bVar18 ^ 1) & bVar62;" (assignment_expression "local_e3 = (bVar18 ^ 1) & bVar62" identifier = (binary_expression "(bVar18 ^ 1) & bVar62" (parenthesized_expression "(bVar18 ^ 1)" ( (binary_expression "bVar18 ^ 1" identifier ^ number_literal) )) & identifier)) ;) (expression_statement "local_e2 = (bool)local_e3;" (assignment_expression "local_e2 = (bool)local_e3" identifier = (cast_expression "(bool)local_e3" ( (type_descriptor "bool" primitive_type) ) identifier)) ;) (if_statement "if ((bool)local_e3 != false) goto LAB_002c4e81;" if (parenthesized_expression "((bool)local_e3 != false)" ( (binary_expression "(bool)local_e3 != false" (cast_expression "(bool)local_e3" ( (type_descriptor "bool" primitive_type) ) identifier) != false) )) (goto_statement "goto LAB_002c4e81;" goto statement_identifier ;)) (expression_statement "local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;" (assignment_expression "local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85" identifier = (binary_expression "((byte)local_98 ^ 1) & uVar60 == 0x85" (parenthesized_expression "((byte)local_98 ^ 1)" ( (binary_expression "(byte)local_98 ^ 1" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) ^ number_literal) )) & (binary_expression "uVar60 == 0x85" identifier == number_literal))) ;) (if_statement "if ((bool)local_e3 == false) {\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }" if (parenthesized_expression "((bool)local_e3 == false)" ( (binary_expression "(bool)local_e3 == false" (cast_expression "(bool)local_e3" ( (type_descriptor "bool" primitive_type) ) identifier) == false) )) (compound_statement "{\nLAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;\n      if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }\n      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;\n      local_e2 = true;\n      goto LAB_002c4e81;\n    }" { (labeled_statement "LAB_002c5694:\n      local_e3 = (byte)local_98 | bVar18;" statement_identifier : (expression_statement "local_e3 = (byte)local_98 | bVar18;" (assignment_expression "local_e3 = (byte)local_98 | bVar18" identifier = (binary_expression "(byte)local_98 | bVar18" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) | identifier)) ;)) (if_statement "if (uVar60 != 4 && uVar60 != 0x25) {\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }" if (parenthesized_expression "(uVar60 != 4 && uVar60 != 0x25)" ( (binary_expression "uVar60 != 4 && uVar60 != 0x25" (binary_expression "uVar60 != 4" identifier != number_literal) && (binary_expression "uVar60 != 0x25" identifier != number_literal)) )) (compound_statement "{\n        local_e3 = uVar60 == 4 || uVar60 == 0x25;\n      }" { (expression_statement "local_e3 = uVar60 == 4 || uVar60 == 0x25;" (assignment_expression "local_e3 = uVar60 == 4 || uVar60 == 0x25" identifier = (binary_expression "uVar60 == 4 || uVar60 == 0x25" (binary_expression "uVar60 == 4" identifier == number_literal) || (binary_expression "uVar60 == 0x25" identifier == number_literal))) ;) })) (if_statement "if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;" if (parenthesized_expression "(gsym != (Sized_symbol<32> *)0x0)" ( (binary_expression "gsym != (Sized_symbol<32> *)0x0)" identifier != (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) )) (goto_statement "goto LAB_002c5175;" goto statement_identifier ;)) (expression_statement "local_e2 = true;" (assignment_expression "local_e2 = true" identifier = true) ;) (goto_statement "goto LAB_002c4e81;" goto statement_identifier ;) })) (expression_statement "r_types[0] = 0x85;" (assignment_expression "r_types[0] = 0x85" (subscript_expression "r_types[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "r_types[1] = 0;" (assignment_expression "r_types[1] = 0" (subscript_expression "r_types[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "r_types[2] = 0;" (assignment_expression "r_types[2] = 0" (subscript_expression "r_types[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_f4 = 0x21;" (assignment_expression "local_f4 = 0x21" identifier = number_literal) ;) (expression_statement "local_e2 = (bool)local_e3;" (assignment_expression "local_e2 = (bool)local_e3" identifier = (cast_expression "(bool)local_e3" ( (type_descriptor "bool" primitive_type) ) identifier)) ;) (labeled_statement "LAB_002c581a:\n    if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }" statement_identifier : (if_statement "if (1 < r_types[0] - 0x8b) {\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }" if (parenthesized_expression "(1 < r_types[0] - 0x8b)" ( (binary_expression "1 < r_types[0] - 0x8b" number_literal < (binary_expression "r_types[0] - 0x8b" (subscript_expression "r_types[0]" identifier [ number_literal ]) - number_literal)) )) (compound_statement "{\n      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);\n      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;\nLAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;\nLAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    }" { (expression_statement "uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);" (assignment_expression "uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8)" identifier = (call_expression "(uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8)" (call_expression "(uint)(ushort)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(ushort)" ( identifier ))) (argument_list "(*(ushort *)view << 8 | *(ushort *)view >> 8)" ( (binary_expression "*(ushort *)view << 8 | *(ushort *)view >> 8" (binary_expression "*(ushort *)view << 8" (pointer_expression "*(ushort *)view" * (cast_expression "(ushort *)view" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) << number_literal) | (binary_expression "*(ushort *)view >> 8" (pointer_expression "*(ushort *)view" * (cast_expression "(ushort *)view" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) >> number_literal)) )))) ;) (expression_statement "uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;" (assignment_expression "uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8" identifier = (binary_expression "*(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8" (binary_expression "*(ushort *)(view + 2) << 8" (pointer_expression "*(ushort *)(view + 2)" * (cast_expression "(ushort *)(view + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(view + 2)" ( (binary_expression "view + 2" identifier + number_literal) )))) << number_literal) | (binary_expression "*(ushort *)(view + 2) >> 8" (pointer_expression "*(ushort *)(view + 2)" * (cast_expression "(ushort *)(view + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(view + 2)" ( (binary_expression "view + 2" identifier + number_literal) )))) >> number_literal))) ;) (labeled_statement "LAB_002c4ee9:\n      uVar21 = uVar21 << 0x10 | (uint)uVar38;" statement_identifier : (expression_statement "uVar21 = uVar21 << 0x10 | (uint)uVar38;" (assignment_expression "uVar21 = uVar21 << 0x10 | (uint)uVar38" identifier = (binary_expression "uVar21 << 0x10 | (uint)uVar38" (binary_expression "uVar21 << 0x10" identifier << number_literal) | (cast_expression "(uint)uVar38" ( (type_descriptor "uint" type_identifier) ) identifier))) ;)) (labeled_statement "LAB_002c4ef1:\n      *(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;" statement_identifier : (expression_statement "*(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;" (assignment_expression "*(uint *)view =\n           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar21 << 0x18" identifier << number_literal))) ;)) }))) }) (ERROR "else {\nLAB_002c5150:\n    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol" else { identifier : identifier = identifier : : identifier : : identifier ( & identifier -> identifier) ))) (ERROR ";\n    if" ; if) (argument_list "(bVar61)" ( identifier ))) (ERROR "{\n      local_e3" { identifier) = number_literal) (ERROR ";\n    }\n    else {\n      local_e3 =" ; } else { identifier =) (argument_list "(bVar18 ^ 1)" ( (binary_expression "bVar18 ^ 1" identifier ^ number_literal) ))) & identifier) (ERROR ";\n      if" ; if) (argument_list "((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))" ( (binary_expression "(local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0)" (parenthesized_expression "(local_e3 == 0)" ( (binary_expression "local_e3 == 0" identifier == number_literal) )) && (parenthesized_expression "(local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0)" ( (comma_expression "local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0" (assignment_expression "local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85" identifier = (binary_expression "((byte)local_98 ^ 1) & uVar60 == 0x85" (parenthesized_expression "((byte)local_98 ^ 1)" ( (binary_expression "(byte)local_98 ^ 1" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) ^ number_literal) )) & (binary_expression "uVar60 == 0x85" identifier == number_literal))) , (binary_expression "local_e3 == 0" identifier == number_literal)) ))) ))) (ERROR "goto LAB_002c5694;\n    }\nLAB_002c5175:\n    uVar21" identifier identifier ; } identifier : identifier) = (field_expression "(gsym->super_Symbol).dynsym_index_" (parenthesized_expression "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) )) . field_identifier)) (ERROR ";\n    sVar56 =" ; identifier =) (argument_list "(size_t)" ( identifier ))) (ERROR "uVar21;\n    bVar61" identifier ; identifier) = (binary_expression "uVar21 != 0" identifier != number_literal)) (ERROR ";\n    object =" ; identifier =) (argument_list "(_List_node_base **)" ( (binary_expression "_List_node_base **" identifier * (pointer_expression "*" * identifier)) ))) (argument_list "(ulong)" ( identifier ))) (ERROR "bVar61;\n    if" identifier ; if) (argument_list "((char)gsym[1].super_Symbol.symtab_index_ != '\0')" ( (binary_expression "(char)gsym[1].super_Symbol.symtab_index_ != '\0'" (cast_expression "(char)gsym[1].super_Symbol.symtab_index_" ( (type_descriptor "char" primitive_type) ) (field_expression "gsym[1].super_Symbol.symtab_index_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier)) != (char_literal "'\0'" ' escape_sequence ')) ))) (ERROR "{\n      local_e2" { identifier) = (call_expression "symbol_refs_local(&gsym->super_Symbol,bVar61,true)" identifier (argument_list "(&gsym->super_Symbol,bVar61,true)" ( (pointer_expression "&gsym->super_Symbol" & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) , identifier , true )))) (ERROR ";\n      if" ; if) (argument_list "((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2))" ( (binary_expression "(!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)" (parenthesized_expression "(!local_e2)" ( (unary_expression "!local_e2" ! identifier) )) && (parenthesized_expression "(local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)" ( (comma_expression "local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2" (assignment_expression "local_e2 = uVar60 == 0x92 || uVar60 == 0x14" identifier = (binary_expression "uVar60 == 0x92 || uVar60 == 0x14" (binary_expression "uVar60 == 0x92" identifier == number_literal) || (binary_expression "uVar60 == 0x14" identifier == number_literal))) , identifier) ))) ))) (ERROR "goto LAB_002c5579;\nLAB_002c4e81:\n      local_f4" identifier identifier ; identifier : identifier) = (binary_expression "uVar60 - 100" identifier - number_literal)) (ERROR ";\n      uVar43 =" ; identifier =) (argument_list "(ulong)" ( identifier ))) (argument_list "(uVar60 - 0x85)" ( (binary_expression "uVar60 - 0x85" identifier - number_literal) ))) (ERROR ";\n      r_types" ; identifier) [ number_literal ]) = number_literal) (ERROR ";\n      r_types" ; identifier) [ number_literal ]) = number_literal) (ERROR ";\n      if" ; if) (argument_list "(0xc < local_f4)" ( (binary_expression "0xc < local_f4" number_literal < identifier) ))) (ERROR "goto LAB_002c55ef;\n      uVar19" identifier identifier ; identifier) = (binary_expression "*(ushort *)view << 8 | *(ushort *)view >> 8" (binary_expression "*(ushort *)view << 8" (pointer_expression "*(ushort *)view" * (cast_expression "(ushort *)view" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) << number_literal) | (binary_expression "*(ushort *)view >> 8" (pointer_expression "*(ushort *)view" * (cast_expression "(ushort *)view" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) >> number_literal))) (ERROR ";\n      uVar21 =" ; identifier =) (argument_list "(uint)" ( identifier ))) (ERROR "uVar19;\n      uVar38" identifier ; identifier) = (binary_expression "*(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8" (binary_expression "*(ushort *)(view + 2) << 8" (pointer_expression "*(ushort *)(view + 2)" * (cast_expression "(ushort *)(view + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(view + 2)" ( (binary_expression "view + 2" identifier + number_literal) )))) << number_literal) | (binary_expression "*(ushort *)(view + 2) >> 8" (pointer_expression "*(ushort *)(view + 2)" * (cast_expression "(ushort *)(view + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(view + 2)" ( (binary_expression "view + 2" identifier + number_literal) )))) >> number_literal))) (ERROR ";\n      r_types" ; identifier) [ number_literal ]) = identifier) (ERROR ";\n      if" ; if) (argument_list "(uVar60 - 0x85 < 0x29)" ( (binary_expression "uVar60 - 0x85 < 0x29" (binary_expression "uVar60 - 0x85" identifier - number_literal) < number_literal) ))) (ERROR "{\n        object" { identifier) = (cast_expression "(_List_node_base **)0x1b3e1fff3ff" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) (ERROR ";\n        if" ; if) (argument_list "((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0)" ( (binary_expression "(0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0" (parenthesized_expression "(0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1)" ( (binary_expression "0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> (uVar43 & 0x3f)" number_literal >> (parenthesized_expression "(uVar43 & 0x3f)" ( (binary_expression "uVar43 & 0x3f" identifier & number_literal) ))) & number_literal) )) == number_literal) ))) (ERROR "goto LAB_002c5704;\n        goto LAB_002c4ee9;\n      }\n      if" identifier identifier ; goto identifier ; } if) (argument_list "(uVar60 == 100)" ( (binary_expression "uVar60 == 100" identifier == number_literal) ))) (ERROR "{\n        local_f4" { identifier) = number_literal) (ERROR ";\n        goto LAB_002c4ee9;\n      }\nLAB_002c5704:\n      object =" ; goto identifier ; } identifier : identifier =) (argument_list "(_List_node_base **)" ( (binary_expression "_List_node_base **" identifier * (pointer_expression "*" * identifier)) ))) (argument_list "(((ulong)uVar19 & 0x1f) << 0xb)" ( (binary_expression "((ulong)uVar19 & 0x1f) << 0xb" (parenthesized_expression "((ulong)uVar19 & 0x1f)" ( (binary_expression "(ulong)uVar19 & 0x1f" (cast_expression "(ulong)uVar19" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) )) << number_literal) ))) (ERROR ";\n      uVar21 =" ; identifier =) (argument_list "(uint)" ( identifier ))) (argument_list "(uVar19 & 0x7e0)" ( (binary_expression "uVar19 & 0x7e0" identifier & number_literal) ))) | (binary_expression "uVar38 & 0x1f" identifier & number_literal)) | (binary_expression "(uVar19 & 0xf800) << 0x10" (parenthesized_expression "(uVar19 & 0xf800)" ( (binary_expression "uVar19 & 0xf800" identifier & number_literal) )) << number_literal)) | (binary_expression "(uVar38 & 0xffe0) << 0xb" (parenthesized_expression "(uVar38 & 0xffe0)" ( (binary_expression "uVar38 & 0xffe0" identifier & number_literal) )) << number_literal)) | (cast_expression "(uint)object" ( (type_descriptor "uint" type_identifier) ) identifier)) (ERROR ";\n      goto LAB_002c4ef1;\n    }\n                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */\n    local_e2 = symbol_refs_local(" ; goto identifier ; } comment identifier = identifier () & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) , (comma_expression "bVar61,false" identifier , false)) )) (ERROR ";\n    if" ; if) (argument_list "((local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))" ( (binary_expression "(local_e2) ||\n       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92)" (parenthesized_expression "(local_e2)" ( identifier )) || (parenthesized_expression "(local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92)" ( (comma_expression "local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92" (assignment_expression "local_e2 = uVar60 == 0x14 || uVar60 == 0x92" identifier = (binary_expression "uVar60 == 0x14 || uVar60 == 0x92" (binary_expression "uVar60 == 0x14" identifier == number_literal) || (binary_expression "uVar60 == 0x92" identifier == number_literal))) , (binary_expression "uVar60 != 0x14 && uVar60 != 0x92" (binary_expression "uVar60 != 0x14" identifier != number_literal) && (binary_expression "uVar60 != 0x92" identifier != number_literal))) ))) ))) (ERROR "goto LAB_002c4e81;\nLAB_002c5579:\n    if" identifier identifier ; identifier : if) (argument_list "(uVar60 - 0x85 < 0x29)" ( (binary_expression "uVar60 - 0x85 < 0x29" (binary_expression "uVar60 - 0x85" identifier - number_literal) < number_literal) ))) (ERROR "{\n      uVar29" { identifier) = (binary_expression "1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff" (binary_expression "1L << ((byte)(uVar60 - 0x85) & 0x3f)" number_literal << (parenthesized_expression "((byte)(uVar60 - 0x85) & 0x3f)" ( (binary_expression "(byte)(uVar60 - 0x85) & 0x3f" (call_expression "(byte)(uVar60 - 0x85)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar60 - 0x85)" ( (binary_expression "uVar60 - 0x85" identifier - number_literal) ))) & number_literal) ))) & number_literal)) (ERROR ";\n      uVar43 =" ; identifier =) (argument_list "(ulong)" ( identifier ))) (argument_list "((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc)" ( (binary_expression "(-(uint)(uVar29 == 0) & 0xffffff82) + 0xc" (parenthesized_expression "(-(uint)(uVar29 == 0) & 0xffffff82)" ( (binary_expression "-(uint)(uVar29 == 0) & 0xffffff82" (unary_expression "-(uint)(uVar29 == 0)" - (call_expression "(uint)(uVar29 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar29 == 0)" ( (binary_expression "uVar29 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal) ))) (ERROR ";\n      local_f4 =" ; identifier =) (argument_list "(-(uint)(uVar29 == 0) & 0xffffff82)" ( (binary_expression "-(uint)(uVar29 == 0) & 0xffffff82" (unary_expression "-(uint)(uVar29 == 0)" - (call_expression "(uint)(uVar29 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar29 == 0)" ( (binary_expression "uVar29 == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal) (ERROR ";\n      uVar60 =" ; identifier =) (argument_list "(-(uint)(uVar29 == 0) & 0xffffff82)" ( (binary_expression "-(uint)(uVar29 == 0) & 0xffffff82" (unary_expression "-(uint)(uVar29 == 0)" - (call_expression "(uint)(uVar29 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar29 == 0)" ( (binary_expression "uVar29 == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal) (ERROR ";\n    }\n    else {\n      uVar43 = 0xffffff8e;\n      uVar60 = 0x13;\n      local_f4 = 0xffffffaf;\n    }\n    r_types" ; } else { identifier = number_literal ; identifier = number_literal ; identifier = number_literal ; } identifier) [ number_literal ]) = number_literal) (ERROR ";\n    r_types" ; identifier) [ number_literal ]) = number_literal) (ERROR ";\n    local_e2 = false;\nLAB_002c55ef:\n    r_types" ; identifier = false ; identifier : identifier) [ number_literal ]) = identifier) (ERROR ";\n    if" ; if) (argument_list "(((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0))" ( (binary_expression "((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)" (parenthesized_expression "((uint)uVar43 < 0x29)" ( (binary_expression "(uint)uVar43 < 0x29" (cast_expression "(uint)uVar43" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal) )) && (parenthesized_expression "((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)" ( (binary_expression "(0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0" (parenthesized_expression "(0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1)" ( (binary_expression "0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> (uVar43 & 0x3f)" number_literal >> (parenthesized_expression "(uVar43 & 0x3f)" ( (binary_expression "uVar43 & 0x3f" identifier & number_literal) ))) & number_literal) )) != number_literal) ))) ))) (ERROR "goto LAB_002c581a;\n  }\n  uVar60" identifier identifier ; } identifier) = (subscript_expression "r_types[0]" identifier [ number_literal ])) (ERROR ";\n  bVar61 = rel_type" ; identifier = identifier) == number_literal) (ERROR ";\n  r_types" ; identifier) [ number_literal ]) = number_literal) (ERROR ";\n  r_types" ; identifier) [ number_literal ]) = number_literal) (ERROR ";\n  puVar58 = r_types;\n  SVar27 = STATUS_OKAY;\n  local_e8 = 0;\n  uVar21 = r_types" ; identifier = identifier ; identifier = identifier ; identifier = number_literal ; identifier = identifier) [ number_literal ]) (ERROR ";\nLAB_002c4f1d:\n  uVar65 =" ; identifier : identifier =) (argument_list "(undefined4)" ( identifier ))) (argument_list "((ulong)in_stack_fffffffffffffee8 >> 0x20)" ( (binary_expression "(ulong)in_stack_fffffffffffffee8 >> 0x20" (cast_expression "(ulong)in_stack_fffffffffffffee8" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) ))) (ERROR ";\n  iVar25 =" ; identifier =) (argument_list "(int)" ( identifier ))) (ERROR "object;\n  if" identifier ; if) (argument_list "(uVar21 == 0)" ( (binary_expression "uVar21 == 0" identifier == number_literal) ))) (ERROR "goto LAB_002c5380;\n  pTVar54" identifier identifier ; identifier) = (ERROR "(Target_mips<32,_true> *)(ulong)local_c4;" (call_expression "(Target_mips<32,_true> *)(ulong)" (parenthesized_expression "(Target_mips<32,_true> *)" ( (comma_expression "Target_mips<32,_true> *" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *" identifier > (pointer_expression "*" * identifier))) )) (argument_list "(ulong)" ( identifier ))) identifier ;) (assignment_expression "bVar62 = local_b0 == uVar48" identifier = (binary_expression "local_b0 == uVar48" identifier == identifier))) (ERROR ";\n  bVar63 = local_c4" ; identifier = identifier) != number_literal) (ERROR ";\n  cVar47 = bVar62" ; identifier = identifier) && identifier) (ERROR ";\n  uVar49 =" ; identifier =) (argument_list "(uint)" ( identifier ))) (argument_list "(byte)" ( identifier ))) (ERROR "cVar47;\n  if" identifier ; if) (argument_list "(this->calculate_only_ == false)" ( (binary_expression "this->calculate_only_ == false" (field_expression "this->calculate_only_" identifier -> field_identifier) == false) ))) (ERROR "{\n    this" { identifier) -> field_identifier) = (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier)) (ERROR ";\n    switch(uVar21" ; switch ( identifier) )) )) (compound_statement "{\n    default:\n      goto switchD_002c5379_caseD_0;\n    case 1:\n      local_c0._0_4_ = local_c8;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      if (bVar61 != false) {\n        local_c0._0_4_ = (uint)uVar19;\n        if ((short)uVar19 < 0) {\n          local_c0._0_4_ = uVar19 - 0x10000;\n        }\n      }\n      goto LAB_002c70ec;\n    case 2:\n      goto switchD_002c5379_caseD_2;\n    case 3:\n      goto switchD_002c4f87_caseD_3;\n    case 4:\n    case 100:\n    case 0x85:\n      bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n      local_c0 = (ulong)local_c8;\n      uVar49 = *(uint *)view;\n      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8;\n      uVar26 = uVar23 | uVar49 << 0x18;\n      if (bVar61 == false) {\nLAB_002c7644:\n        bVar16 = bVar61;\n        if (bVar64 == false) {\nLAB_002c764c:\n          uVar57 = SUB81(pTVar54,0);\n          bVar64 = gsym == (Sized_symbol<32> *)0x0;\n          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;\n          if (bVar64) {\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n          uVar49 = (uint)local_c0 & 0x7ffffff;\n          if ((local_c0 & 0x4000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }\n          goto LAB_002c73f5;\n        }\nLAB_002c7cf3:\n        bVar61 = bVar16;\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n        if ((VVar20 & 3) == (uint)(uVar21 == 4)) goto LAB_002c764c;\n        pcVar28 = (char *)gettext("JALX to a non-word-aligned address");\n        gold::gold_warning(pcVar28);\nLAB_002c7d32:\n        SVar27 = STATUS_BAD_RELOC;\n      }\n      else {\n        if (uVar21 == 0x85) {\n          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;\n          goto LAB_002c7644;\n        }\n        local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);\n        bVar16 = bVar64;\n        if (bVar64 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n        uVar57 = SUB81(pTVar54,0);\n        bVar64 = gsym == (Sized_symbol<32> *)0x0;\n        if (bVar64) {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = 0xf0000000;\nLAB_002c73e1:\n          bVar64 = true;\n          uVar49 = address + 4 & uVar49 | (uint)local_c0;\n        }\n        else {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }\nLAB_002c73f5:\n        object = (_List_node_base **)this_00;\n        pSVar34 = (Sized_symbol<32> *)psymval;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n        uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);\n        pSVar44 = extraout_RDX_00;\n        if (((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;\n          goto LAB_002c5940;\n        }\n        uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;\n        object = (_List_node_base **)(ulong)uVar23;\n        if (local_e3 != 0) {\n          uVar26 = uVar26 >> 0x1a;\n          uVar46 = (undefined7)((ulong)pSVar44 >> 8);\n          if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }\n          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }\n          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;\n        }\n        if (gold::parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);\n        }\n        if (!bVar62 || !bVar63) goto LAB_002c5ccb;\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = uVar23;\n      }\n      goto LAB_002c5940;\n    case 5:\n    case 0x68:\n    case 0x86:\n      goto switchD_002c5379_caseD_5;\n    case 6:\n    case 0x69:\n    case 0x87:\n    case 0x9d:\n      local_c0 = (ulong)local_c8;\n      in_stack_fffffffffffffed0 = *(uint *)view;\n      uVar23 = (in_stack_fffffffffffffed0 & 0xff0000) >> 8;\n      uVar49 = in_stack_fffffffffffffed0 >> 0x18 | uVar23;\n      in_stack_fffffffffffffee0 = (_List_node_base *)(ulong)uVar49;\n      if (bVar61 != false) {\n        object = (_List_node_base **)(ulong)uVar49;\n        uVar26 = uVar49 - 0x10000;\n        if ((uVar23 & 0x8000) == 0) {\n          uVar26 = uVar49;\n        }\n        local_c0 = (ulong)uVar26;\n      }\n      goto LAB_002c7171;\n    case 7:\n    case 8:\n    case 0x65:\n    case 0x88:\n    case 0x89:\n    case 0xac:\n      local_c0._0_4_ = local_c8;\n      pSVar34 = target->gp_;\n      if (pSVar34 != (Sized_symbol<32> *)0x0) goto LAB_002c7253;\n      VVar39 = 0;\nLAB_002c7297:\n      uVar49 = *(uint *)view;\n      uVar26 = (uVar49 & 0xff0000) >> 8;\n      uVar23 = uVar49 >> 0x18 | uVar26;\n      uVar49 = uVar23 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n      local_c8 = (uint)local_c0;\n      if (bVar61 != false) {\n        if (uVar21 == 0xac) {\n          local_c0._0_4_ = uVar49 * 4 & 0x1fc;\n        }\n        else {\n          local_c0._0_4_ = uVar23 - 0x10000;\n          if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }\n        }\n      }\n      goto LAB_002c72d4;\n    case 9:\n    case 0x66:\n    case 0x8a:\n      goto switchD_002c5379_caseD_9;\n    case 10:\n      goto LAB_002c6a55;\n    case 0xb:\n    case 0x67:\n    case 0x8e:\n      goto switchD_002c5379_caseD_b;\n    case 0xc:\n      goto switchD_002c5379_caseD_c;\n    case 0x12:\n      goto switchD_002c5379_caseD_12;\n    case 0x13:\n    case 0x91:\n    case 0xf9:\n      goto switchD_002c5379_caseD_13;\n    case 0x14:\n    case 0x92:\n      goto switchD_002c5379_caseD_14;\n    case 0x15:\n    case 0x93:\n      goto switchD_002c5379_caseD_15;\n    case 0x16:\n    case 0x1e:\n    case 0x94:\n    case 0x99:\n      goto switchD_002c5379_caseD_16;\n    case 0x17:\n    case 0x1f:\n    case 0x95:\n    case 0x9a:\n      goto switchD_002c5379_caseD_17;\n    case 0x18:\n    case 0x96:\n      local_c0._0_4_ = local_c8;\n      if (bVar61 != false) {\n        uVar10 = *(undefined8 *)view;\n        local_c0._0_4_ =\n             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }\n      goto LAB_002c6b1a;\n    case 0x1c:\n    case 0x97:\n      goto LAB_002c59bd;\n    case 0x1d:\n    case 0x98:\n      goto LAB_002c6b55;\n    case 0x25:\n    case 0x9c:\n      goto switchD_002c5379_caseD_25;\n    case 0x27:\n    case 0x29:\n      goto switchD_002c5379_caseD_27;\n    case 0x2a:\n    case 0x6a:\n    case 0xa2:\n      goto switchD_002c5379_caseD_2a;\n    case 0x2b:\n    case 0x6b:\n    case 0xa3:\n      goto switchD_002c5379_caseD_2b;\n    case 0x2c:\n    case 0x6c:\n    case 0xa4:\n      goto switchD_002c5379_caseD_2c;\n    case 0x2d:\n    case 0x6d:\n    case 0xa5:\n      goto switchD_002c5379_caseD_2d;\n    case 0x2e:\n    case 0x6e:\n    case 0xa6:\n      goto switchD_002c5379_caseD_2e;\n    case 0x2f:\n    case 0x30:\n      goto switchD_002c5379_caseD_2f;\n    case 0x31:\n    case 0x6f:\n    case 0xa9:\n      goto switchD_002c5379_caseD_31;\n    case 0x32:\n    case 0x70:\n    case 0xaa:\n      goto switchD_002c5379_caseD_32;\n    case 0x3c:\n      goto LAB_002c6f06;\n    case 0x3d:\n      goto LAB_002c6fd2;\n    case 0x3e:\n      goto LAB_002c6d53;\n    case 0x3f:\n      goto LAB_002c6e24;\n    case 0x40:\n      goto switchD_002c5379_caseD_40;\n    case 0x41:\n      goto LAB_002c6ccf;\n    case 0x8b:\n      goto LAB_002c6bb8;\n    case 0x8c:\n      goto LAB_002c6c3e;\n    case 0x8d:\n      goto LAB_002c69c5;\n    case 0xf8:\n      if (bVar61 != false) {\n        uVar21 = *(uint *)view;\n        local_c0._0_4_ =\n             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n        goto LAB_002c6ed9;\n      }\nLAB_002c8390:\n      local_c0._0_4_ = local_c8;\n      goto LAB_002c6ed9;\n    }" { (case_statement "default:\n      goto switchD_002c5379_caseD_0;" default : (goto_statement "goto switchD_002c5379_caseD_0;" goto statement_identifier ;)) (case_statement "case 1:\n      local_c0._0_4_ = local_c8;\n      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;\n      if (bVar61 != false) {\n        local_c0._0_4_ = (uint)uVar19;\n        if ((short)uVar19 < 0) {\n          local_c0._0_4_ = uVar19 - 0x10000;\n        }\n      }\n      goto LAB_002c70ec;" case number_literal : (expression_statement "local_c0._0_4_ = local_c8;" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) (expression_statement "uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;" (assignment_expression "uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8" identifier = (binary_expression "*(ushort *)view << 8 | *(ushort *)view >> 8" (binary_expression "*(ushort *)view << 8" (pointer_expression "*(ushort *)view" * (cast_expression "(ushort *)view" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) << number_literal) | (binary_expression "*(ushort *)view >> 8" (pointer_expression "*(ushort *)view" * (cast_expression "(ushort *)view" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) >> number_literal))) ;) (if_statement "if (bVar61 != false) {\n        local_c0._0_4_ = (uint)uVar19;\n        if ((short)uVar19 < 0) {\n          local_c0._0_4_ = uVar19 - 0x10000;\n        }\n      }" if (parenthesized_expression "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) )) (compound_statement "{\n        local_c0._0_4_ = (uint)uVar19;\n        if ((short)uVar19 < 0) {\n          local_c0._0_4_ = uVar19 - 0x10000;\n        }\n      }" { (expression_statement "local_c0._0_4_ = (uint)uVar19;" (assignment_expression "local_c0._0_4_ = (uint)uVar19" (field_expression "local_c0._0_4_" identifier . field_identifier) = (cast_expression "(uint)uVar19" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if ((short)uVar19 < 0) {\n          local_c0._0_4_ = uVar19 - 0x10000;\n        }" if (parenthesized_expression "((short)uVar19 < 0)" ( (binary_expression "(short)uVar19 < 0" (cast_expression "(short)uVar19" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier) < number_literal) )) (compound_statement "{\n          local_c0._0_4_ = uVar19 - 0x10000;\n        }" { (expression_statement "local_c0._0_4_ = uVar19 - 0x10000;" (assignment_expression "local_c0._0_4_ = uVar19 - 0x10000" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar19 - 0x10000" identifier - number_literal)) ;) })) })) (goto_statement "goto LAB_002c70ec;" goto statement_identifier ;)) (case_statement "case 2:\n      goto switchD_002c5379_caseD_2;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2;" goto statement_identifier ;)) (case_statement "case 3:\n      goto switchD_002c4f87_caseD_3;" case number_literal : (goto_statement "goto switchD_002c4f87_caseD_3;" goto statement_identifier ;)) (case_statement "case 4:" case number_literal :) (case_statement "case 100:" case number_literal :) (case_statement "case 0x85:\n      bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n      local_c0 = (ulong)local_c8;\n      uVar49 = *(uint *)view;\n      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8;\n      uVar26 = uVar23 | uVar49 << 0x18;\n      if (bVar61 == false) {\nLAB_002c7644:\n        bVar16 = bVar61;\n        if (bVar64 == false) {\nLAB_002c764c:\n          uVar57 = SUB81(pTVar54,0);\n          bVar64 = gsym == (Sized_symbol<32> *)0x0;\n          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;\n          if (bVar64) {\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n          uVar49 = (uint)local_c0 & 0x7ffffff;\n          if ((local_c0 & 0x4000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }\n          goto LAB_002c73f5;\n        }\nLAB_002c7cf3:\n        bVar61 = bVar16;\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n        if ((VVar20 & 3) == (uint)(uVar21 == 4)) goto LAB_002c764c;\n        pcVar28 = (char *)gettext("JALX to a non-word-aligned address");\n        gold::gold_warning(pcVar28);\nLAB_002c7d32:\n        SVar27 = STATUS_BAD_RELOC;\n      }\n      else {\n        if (uVar21 == 0x85) {\n          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;\n          goto LAB_002c7644;\n        }\n        local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);\n        bVar16 = bVar64;\n        if (bVar64 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n        uVar57 = SUB81(pTVar54,0);\n        bVar64 = gsym == (Sized_symbol<32> *)0x0;\n        if (bVar64) {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = 0xf0000000;\nLAB_002c73e1:\n          bVar64 = true;\n          uVar49 = address + 4 & uVar49 | (uint)local_c0;\n        }\n        else {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }\nLAB_002c73f5:\n        object = (_List_node_base **)this_00;\n        pSVar34 = (Sized_symbol<32> *)psymval;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n        uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);\n        pSVar44 = extraout_RDX_00;\n        if (((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;\n          goto LAB_002c5940;\n        }\n        uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;\n        object = (_List_node_base **)(ulong)uVar23;\n        if (local_e3 != 0) {\n          uVar26 = uVar26 >> 0x1a;\n          uVar46 = (undefined7)((ulong)pSVar44 >> 8);\n          if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }\n          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }\n          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;\n        }\n        if (gold::parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);\n        }\n        if (!bVar62 || !bVar63) goto LAB_002c5ccb;\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = uVar23;\n      }\n      goto LAB_002c5940;" case number_literal : (expression_statement "bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);" (assignment_expression "bVar64 = (bool)((!bVar62 || !bVar63) & local_e3)" identifier = (cast_expression "(bool)((!bVar62 || !bVar63) & local_e3)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "((!bVar62 || !bVar63) & local_e3)" ( (binary_expression "(!bVar62 || !bVar63) & local_e3" (parenthesized_expression "(!bVar62 || !bVar63)" ( (binary_expression "!bVar62 || !bVar63" (unary_expression "!bVar62" ! identifier) || (unary_expression "!bVar63" ! identifier)) )) & identifier) )))) ;) (expression_statement "local_c0 = (ulong)local_c8;" (assignment_expression "local_c0 = (ulong)local_c8" identifier = (cast_expression "(ulong)local_c8" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar49 = *(uint *)view;" (assignment_expression "uVar49 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8;" (assignment_expression "uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8" identifier = (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8" (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8" (binary_expression "uVar49 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar49 & 0xff0000) >> 8" (parenthesized_expression "(uVar49 & 0xff0000)" ( (binary_expression "uVar49 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal))) ;) (expression_statement "uVar26 = uVar23 | uVar49 << 0x18;" (assignment_expression "uVar26 = uVar23 | uVar49 << 0x18" identifier = (binary_expression "uVar23 | uVar49 << 0x18" identifier | (binary_expression "uVar49 << 0x18" identifier << number_literal))) ;) (if_statement "if (bVar61 == false) {\nLAB_002c7644:\n        bVar16 = bVar61;\n        if (bVar64 == false) {\nLAB_002c764c:\n          uVar57 = SUB81(pTVar54,0);\n          bVar64 = gsym == (Sized_symbol<32> *)0x0;\n          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;\n          if (bVar64) {\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n          uVar49 = (uint)local_c0 & 0x7ffffff;\n          if ((local_c0 & 0x4000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }\n          goto LAB_002c73f5;\n        }\nLAB_002c7cf3:\n        bVar61 = bVar16;\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n        if ((VVar20 & 3) == (uint)(uVar21 == 4)) goto LAB_002c764c;\n        pcVar28 = (char *)gettext("JALX to a non-word-aligned address");\n        gold::gold_warning(pcVar28);\nLAB_002c7d32:\n        SVar27 = STATUS_BAD_RELOC;\n      }\n      else {\n        if (uVar21 == 0x85) {\n          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;\n          goto LAB_002c7644;\n        }\n        local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);\n        bVar16 = bVar64;\n        if (bVar64 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n        uVar57 = SUB81(pTVar54,0);\n        bVar64 = gsym == (Sized_symbol<32> *)0x0;\n        if (bVar64) {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = 0xf0000000;\nLAB_002c73e1:\n          bVar64 = true;\n          uVar49 = address + 4 & uVar49 | (uint)local_c0;\n        }\n        else {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }\nLAB_002c73f5:\n        object = (_List_node_base **)this_00;\n        pSVar34 = (Sized_symbol<32> *)psymval;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n        uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);\n        pSVar44 = extraout_RDX_00;\n        if (((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;\n          goto LAB_002c5940;\n        }\n        uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;\n        object = (_List_node_base **)(ulong)uVar23;\n        if (local_e3 != 0) {\n          uVar26 = uVar26 >> 0x1a;\n          uVar46 = (undefined7)((ulong)pSVar44 >> 8);\n          if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }\n          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }\n          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;\n        }\n        if (gold::parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);\n        }\n        if (!bVar62 || !bVar63) goto LAB_002c5ccb;\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = uVar23;\n      }" if (parenthesized_expression "(bVar61 == false)" ( (binary_expression "bVar61 == false" identifier == false) )) (compound_statement "{\nLAB_002c7644:\n        bVar16 = bVar61;\n        if (bVar64 == false) {\nLAB_002c764c:\n          uVar57 = SUB81(pTVar54,0);\n          bVar64 = gsym == (Sized_symbol<32> *)0x0;\n          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;\n          if (bVar64) {\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n          uVar49 = (uint)local_c0 & 0x7ffffff;\n          if ((local_c0 & 0x4000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }\n          goto LAB_002c73f5;\n        }\nLAB_002c7cf3:\n        bVar61 = bVar16;\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);\n        if ((VVar20 & 3) == (uint)(uVar21 == 4)) goto LAB_002c764c;\n        pcVar28 = (char *)gettext("JALX to a non-word-aligned address");\n        gold::gold_warning(pcVar28);\nLAB_002c7d32:\n        SVar27 = STATUS_BAD_RELOC;\n      }" { (labeled_statement "LAB_002c7644:\n        bVar16 = bVar61;" statement_identifier : (expression_statement "bVar16 = bVar61;" (assignment_expression "bVar16 = bVar61" identifier = identifier) ;)) (if_statement "if (bVar64 == false) {\nLAB_002c764c:\n          uVar57 = SUB81(pTVar54,0);\n          bVar64 = gsym == (Sized_symbol<32> *)0x0;\n          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;\n          if (bVar64) {\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n          uVar49 = (uint)local_c0 & 0x7ffffff;\n          if ((local_c0 & 0x4000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }\n          goto LAB_002c73f5;\n        }" if (parenthesized_expression "(bVar64 == false)" ( (binary_expression "bVar64 == false" identifier == false) )) (compound_statement "{\nLAB_002c764c:\n          uVar57 = SUB81(pTVar54,0);\n          bVar64 = gsym == (Sized_symbol<32> *)0x0;\n          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;\n          if (bVar64) {\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n          uVar49 = (uint)local_c0 & 0x7ffffff;\n          if ((local_c0 & 0x4000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }\n          goto LAB_002c73f5;\n        }" { (labeled_statement "LAB_002c764c:\n          uVar57 = SUB81(pTVar54,0);" statement_identifier : (expression_statement "uVar57 = SUB81(pTVar54,0);" (assignment_expression "uVar57 = SUB81(pTVar54,0)" identifier = (call_expression "SUB81(pTVar54,0)" identifier (argument_list "(pTVar54,0)" ( identifier , number_literal )))) ;)) (expression_statement "bVar64 = gsym == (Sized_symbol<32> *)0x0;" (assignment_expression "bVar64 = gsym == (Sized_symbol<32> *)0x0" identifier = (binary_expression "gsym == (Sized_symbol<32> *)0x0" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) )))) ;) (if_statement "if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;" if (parenthesized_expression "((local_e3 == 1) || (uVar21 != 0x85))" ( (binary_expression "(local_e3 == 1) || (uVar21 != 0x85)" (parenthesized_expression "(local_e3 == 1)" ( (binary_expression "local_e3 == 1" identifier == number_literal) )) || (parenthesized_expression "(uVar21 != 0x85)" ( (binary_expression "uVar21 != 0x85" identifier != number_literal) ))) )) (goto_statement "goto LAB_002c73c9;" goto statement_identifier ;)) (if_statement "if (bVar64) {\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }" if (parenthesized_expression "(bVar64)" ( identifier )) (compound_statement "{\n            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);\n            uVar49 = 0xf8000000;\n            goto LAB_002c73e1;\n          }" { (expression_statement "in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);" (assignment_expression "in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1)" identifier = (cast_expression "(_List_node_base *)CONCAT44(uVar65,1)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT44(uVar65,1)" identifier (argument_list "(uVar65,1)" ( identifier , number_literal ))))) ;) (expression_statement "uVar49 = 0xf8000000;" (assignment_expression "uVar49 = 0xf8000000" identifier = number_literal) ;) (goto_statement "goto LAB_002c73e1;" goto statement_identifier ;) })) (expression_statement "in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);" (assignment_expression "in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1)" identifier = (cast_expression "(_List_node_base *)CONCAT44(uVar65,1)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT44(uVar65,1)" identifier (argument_list "(uVar65,1)" ( identifier , number_literal ))))) ;) (expression_statement "uVar49 = (uint)local_c0 & 0x7ffffff;" (assignment_expression "uVar49 = (uint)local_c0 & 0x7ffffff" identifier = (binary_expression "(uint)local_c0 & 0x7ffffff" (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (if_statement "if ((local_c0 & 0x4000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }" if (parenthesized_expression "((local_c0 & 0x4000000) != 0)" ( (binary_expression "(local_c0 & 0x4000000) != 0" (parenthesized_expression "(local_c0 & 0x4000000)" ( (binary_expression "local_c0 & 0x4000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;\n          }" { (expression_statement "uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;" (assignment_expression "uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000" identifier = (binary_expression "((uint)local_c0 & 0x7ffffff) + 0xf8000000" (parenthesized_expression "((uint)local_c0 & 0x7ffffff)" ( (binary_expression "(uint)local_c0 & 0x7ffffff" (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) + number_literal)) ;) })) (goto_statement "goto LAB_002c73f5;" goto statement_identifier ;) })) (labeled_statement "LAB_002c7cf3:\n        bVar61 = bVar16;" statement_identifier : (expression_statement "bVar61 = bVar16;" (assignment_expression "bVar61 = bVar16" identifier = identifier) ;)) (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0)" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true" (binary_expression "VVar20 = gold::Symbol_value<32>::value" (binary_expression "VVar20 = gold::Symbol_value<32" (assignment_expression "VVar20 = gold" identifier = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,0)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , number_literal)) ))) ))) ;) (expression_statement "uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);" (assignment_expression "uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20)" identifier = (call_expression "(undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20)" (parenthesized_expression "(undefined4)" ( identifier )) (argument_list "((ulong)in_stack_fffffffffffffee8 >> 0x20)" ( (binary_expression "(ulong)in_stack_fffffffffffffee8 >> 0x20" (cast_expression "(ulong)in_stack_fffffffffffffee8" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if ((VVar20 & 3) == (uint)(uVar21 == 4)) goto LAB_002c764c;" if (parenthesized_expression "((VVar20 & 3) == (uint)(uVar21 == 4))" ( (binary_expression "(VVar20 & 3) == (uint)(uVar21 == 4)" (parenthesized_expression "(VVar20 & 3)" ( (binary_expression "VVar20 & 3" identifier & number_literal) )) == (call_expression "(uint)(uVar21 == 4)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar21 == 4)" ( (binary_expression "uVar21 == 4" identifier == number_literal) )))) )) (goto_statement "goto LAB_002c764c;" goto statement_identifier ;)) (expression_statement "pcVar28 = (char *)gettext("JALX to a non-word-aligned address");" (assignment_expression "pcVar28 = (char *)gettext("JALX to a non-word-aligned address")" identifier = (cast_expression "(char *)gettext("JALX to a non-word-aligned address")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext("JALX to a non-word-aligned address")" identifier (argument_list "("JALX to a non-word-aligned address")" ( (string_literal ""JALX to a non-word-aligned address"" " string_content ") ))))) ;) (labeled_statement "gold::gold_warning(pcVar28);" statement_identifier : (ERROR ":" :) (expression_statement "gold_warning(pcVar28);" (call_expression "gold_warning(pcVar28)" identifier (argument_list "(pcVar28)" ( identifier ))) ;)) (labeled_statement "LAB_002c7d32:\n        SVar27 = STATUS_BAD_RELOC;" statement_identifier : (expression_statement "SVar27 = STATUS_BAD_RELOC;" (assignment_expression "SVar27 = STATUS_BAD_RELOC" identifier = identifier) ;)) }) (else_clause "else {\n        if (uVar21 == 0x85) {\n          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;\n          goto LAB_002c7644;\n        }\n        local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);\n        bVar16 = bVar64;\n        if (bVar64 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n        uVar57 = SUB81(pTVar54,0);\n        bVar64 = gsym == (Sized_symbol<32> *)0x0;\n        if (bVar64) {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = 0xf0000000;\nLAB_002c73e1:\n          bVar64 = true;\n          uVar49 = address + 4 & uVar49 | (uint)local_c0;\n        }\n        else {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }\nLAB_002c73f5:\n        object = (_List_node_base **)this_00;\n        pSVar34 = (Sized_symbol<32> *)psymval;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n        uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);\n        pSVar44 = extraout_RDX_00;\n        if (((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;\n          goto LAB_002c5940;\n        }\n        uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;\n        object = (_List_node_base **)(ulong)uVar23;\n        if (local_e3 != 0) {\n          uVar26 = uVar26 >> 0x1a;\n          uVar46 = (undefined7)((ulong)pSVar44 >> 8);\n          if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }\n          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }\n          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;\n        }\n        if (gold::parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);\n        }\n        if (!bVar62 || !bVar63) goto LAB_002c5ccb;\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = uVar23;\n      }" else (compound_statement "{\n        if (uVar21 == 0x85) {\n          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;\n          goto LAB_002c7644;\n        }\n        local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);\n        bVar16 = bVar64;\n        if (bVar64 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n        uVar57 = SUB81(pTVar54,0);\n        bVar64 = gsym == (Sized_symbol<32> *)0x0;\n        if (bVar64) {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = 0xf0000000;\nLAB_002c73e1:\n          bVar64 = true;\n          uVar49 = address + 4 & uVar49 | (uint)local_c0;\n        }\n        else {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }\nLAB_002c73f5:\n        object = (_List_node_base **)this_00;\n        pSVar34 = (Sized_symbol<32> *)psymval;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n        uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);\n        pSVar44 = extraout_RDX_00;\n        if (((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;\n          goto LAB_002c5940;\n        }\n        uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;\n        object = (_List_node_base **)(ulong)uVar23;\n        if (local_e3 != 0) {\n          uVar26 = uVar26 >> 0x1a;\n          uVar46 = (undefined7)((ulong)pSVar44 >> 8);\n          if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }\n          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }\n          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;\n        }\n        if (gold::parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);\n        }\n        if (!bVar62 || !bVar63) goto LAB_002c5ccb;\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = uVar23;\n      }" { (if_statement "if (uVar21 == 0x85) {\n          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;\n          goto LAB_002c7644;\n        }" if (parenthesized_expression "(uVar21 == 0x85)" ( (binary_expression "uVar21 == 0x85" identifier == number_literal) )) (compound_statement "{\n          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;\n          goto LAB_002c7644;\n        }" { (expression_statement "local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;" (assignment_expression "local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe" identifier = (binary_expression "(ulong)(uVar26 * 2) & 0xffffffff07fffffe" (call_expression "(ulong)(uVar26 * 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar26 * 2)" ( (binary_expression "uVar26 * 2" identifier * number_literal) ))) & number_literal)) ;) (goto_statement "goto LAB_002c7644;" goto statement_identifier ;) })) (expression_statement "local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);" (assignment_expression "local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2)" identifier = (call_expression "(ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2)" ( (binary_expression "(uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2" (parenthesized_expression "(uVar23 | uVar49 << 0x18 & 0x3ffffff)" ( (binary_expression "uVar23 | uVar49 << 0x18 & 0x3ffffff" identifier | (binary_expression "uVar49 << 0x18 & 0x3ffffff" (binary_expression "uVar49 << 0x18" identifier << number_literal) & number_literal)) )) << number_literal) )))) ;) (expression_statement "bVar16 = bVar64;" (assignment_expression "bVar16 = bVar64" identifier = identifier) ;) (if_statement "if (bVar64 != false) goto LAB_002c7cf3;" if (parenthesized_expression "(bVar64 != false)" ( (binary_expression "bVar64 != false" identifier != false) )) (goto_statement "goto LAB_002c7cf3;" goto statement_identifier ;)) (labeled_statement "LAB_002c73c9:\n        uVar57 = SUB81(pTVar54,0);" statement_identifier : (expression_statement "uVar57 = SUB81(pTVar54,0);" (assignment_expression "uVar57 = SUB81(pTVar54,0)" identifier = (call_expression "SUB81(pTVar54,0)" identifier (argument_list "(pTVar54,0)" ( identifier , number_literal )))) ;)) (expression_statement "bVar64 = gsym == (Sized_symbol<32> *)0x0;" (assignment_expression "bVar64 = gsym == (Sized_symbol<32> *)0x0" identifier = (binary_expression "gsym == (Sized_symbol<32> *)0x0" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) )))) ;) (if_statement "if (bVar64) {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = 0xf0000000;\nLAB_002c73e1:\n          bVar64 = true;\n          uVar49 = address + 4 & uVar49 | (uint)local_c0;\n        }\n        else {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }" if (parenthesized_expression "(bVar64)" ( identifier )) (compound_statement "{\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = 0xf0000000;\nLAB_002c73e1:\n          bVar64 = true;\n          uVar49 = address + 4 & uVar49 | (uint)local_c0;\n        }" { (expression_statement "in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);" (assignment_expression "in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2)" identifier = (cast_expression "(_List_node_base *)CONCAT44(uVar65,2)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT44(uVar65,2)" identifier (argument_list "(uVar65,2)" ( identifier , number_literal ))))) ;) (expression_statement "uVar49 = 0xf0000000;" (assignment_expression "uVar49 = 0xf0000000" identifier = number_literal) ;) (labeled_statement "LAB_002c73e1:\n          bVar64 = true;" statement_identifier : (expression_statement "bVar64 = true;" (assignment_expression "bVar64 = true" identifier = true) ;)) (expression_statement "uVar49 = address + 4 & uVar49 | (uint)local_c0;" (assignment_expression "uVar49 = address + 4 & uVar49 | (uint)local_c0" identifier = (binary_expression "address + 4 & uVar49 | (uint)local_c0" (binary_expression "address + 4 & uVar49" (binary_expression "address + 4" identifier + number_literal) & identifier) | (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) }) (else_clause "else {\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }" else (compound_statement "{\n          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);\n          uVar49 = (uint)local_c0 & 0xfffffff;\n          if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }\n        }" { (expression_statement "in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);" (assignment_expression "in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2)" identifier = (cast_expression "(_List_node_base *)CONCAT44(uVar65,2)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT44(uVar65,2)" identifier (argument_list "(uVar65,2)" ( identifier , number_literal ))))) ;) (expression_statement "uVar49 = (uint)local_c0 & 0xfffffff;" (assignment_expression "uVar49 = (uint)local_c0 & 0xfffffff" identifier = (binary_expression "(uint)local_c0 & 0xfffffff" (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (if_statement "if ((local_c0 & 0x8000000) != 0) {\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }" if (parenthesized_expression "((local_c0 & 0x8000000) != 0)" ( (binary_expression "(local_c0 & 0x8000000) != 0" (parenthesized_expression "(local_c0 & 0x8000000)" ( (binary_expression "local_c0 & 0x8000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;\n          }" { (expression_statement "uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;" (assignment_expression "uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000" identifier = (binary_expression "((uint)local_c0 & 0xfffffff) + 0xf0000000" (parenthesized_expression "((uint)local_c0 & 0xfffffff)" ( (binary_expression "(uint)local_c0 & 0xfffffff" (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) + number_literal)) ;) })) }))) (labeled_statement "LAB_002c73f5:\n        object = (_List_node_base **)this_00;" statement_identifier : (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;)) (expression_statement "pSVar34 = (Sized_symbol<32> *)psymval;" (assignment_expression "pSVar34 = (Sized_symbol<32> *)psymval" identifier = (parenthesized_expression "(Sized_symbol<32> *)psymval" ( (binary_expression "Sized_symbol<32> *)psymval" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)psymval" * (ERROR ")" )) identifier)) ))) ;) (expression_statement "VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49)" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true" (binary_expression "VVar20 = gold::Symbol_value<32>::value" (binary_expression "VVar20 = gold::Symbol_value<32" (assignment_expression "VVar20 = gold" identifier = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,uVar49)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,uVar49" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,uVar49" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ))) ;) (expression_statement "uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);" (assignment_expression "uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f)" identifier = (binary_expression "VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f)" identifier >> (parenthesized_expression "((byte)in_stack_fffffffffffffee8 & 0x1f)" ( (binary_expression "(byte)in_stack_fffffffffffffee8 & 0x1f" (cast_expression "(byte)in_stack_fffffffffffffee8" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "pSVar44 = extraout_RDX_00;" (assignment_expression "pSVar44 = extraout_RDX_00" identifier = identifier) ;) (if_statement "if (((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;\n          goto LAB_002c5940;\n        }" if (parenthesized_expression "(((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f)))))" ( (binary_expression "((!bVar64) && (!bVar62 || !bVar63)) &&\n           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))" (parenthesized_expression "((!bVar64) && (!bVar62 || !bVar63))" ( (binary_expression "(!bVar64) && (!bVar62 || !bVar63)" (parenthesized_expression "(!bVar64)" ( (unary_expression "!bVar64" ! identifier) )) && (parenthesized_expression "(!bVar62 || !bVar63)" ( (binary_expression "!bVar62 || !bVar63" (unary_expression "!bVar62" ! identifier) || (unary_expression "!bVar63" ! identifier)) ))) )) && (parenthesized_expression "((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))" ( (parenthesized_expression "(pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f)))" ( (ERROR "pSVar34 = gsym, bVar64 = gold::Symbol::" (comma_expression "pSVar34 = gsym, bVar64 = gold" (assignment_expression "pSVar34 = gsym" identifier = identifier) , (assignment_expression "bVar64 = gold" identifier = identifier)) : : identifier : :) (comma_expression "is_weak_undefined(&gsym->super_Symbol),\n            pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))" (call_expression "is_weak_undefined(&gsym->super_Symbol)" identifier (argument_list "(&gsym->super_Symbol)" ( (pointer_expression "&gsym->super_Symbol" & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) ))) , (comma_expression "pSVar44 = extraout_RDX_01, !bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))" (assignment_expression "pSVar44 = extraout_RDX_01" identifier = identifier) , (binary_expression "!bVar64 &&\n            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))" (unary_expression "!bVar64" ! identifier) && (parenthesized_expression "(uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))" ( (comma_expression "uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f)" (assignment_expression "uVar23 = uVar49 >> 0x1a" identifier = (binary_expression "uVar49 >> 0x1a" identifier >> number_literal)) , (comma_expression "pSVar44 = (Symbol_value<32> *)(ulong)uVar23,\n            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f)" (assignment_expression "pSVar44 = (Symbol_value<32> *)(ulong)" identifier = (call_expression "(Symbol_value<32> *)(ulong)" (parenthesized_expression "(Symbol_value<32> *)" ( (binary_expression "Symbol_value<32> *" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*" * identifier)) )) (argument_list "(ulong)" ( identifier )))) (ERROR "uVar23" identifier) , (binary_expression "uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f)" identifier != (binary_expression "address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f)" (binary_expression "address + 4" identifier + number_literal) >> (parenthesized_expression "((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f)" ( (binary_expression "(char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f" (binary_expression "(char)in_stack_fffffffffffffee8 + 0x1aU" (cast_expression "(char)in_stack_fffffffffffffee8" ( (type_descriptor "char" primitive_type) ) identifier) + number_literal) & number_literal) )))))) ))))) )) ))) )) (compound_statement "{\nLAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;\n          goto LAB_002c5940;\n        }" { (labeled_statement "LAB_002c7359:\n          SVar27 = STATUS_OVERFLOW;" statement_identifier : (expression_statement "SVar27 = STATUS_OVERFLOW;" (assignment_expression "SVar27 = STATUS_OVERFLOW" identifier = identifier) ;)) (goto_statement "goto LAB_002c5940;" goto statement_identifier ;) })) (expression_statement "uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;" (assignment_expression "uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff" identifier = (binary_expression "uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff" identifier ^ (binary_expression "(uVar49 ^ uVar26) & 0x3ffffff" (parenthesized_expression "(uVar49 ^ uVar26)" ( (binary_expression "uVar49 ^ uVar26" identifier ^ identifier) )) & number_literal))) ;) (expression_statement "object = (_List_node_base **)(ulong)uVar23;" (assignment_expression "object = (_List_node_base **)(ulong)uVar23" identifier = (cast_expression "(_List_node_base **)(ulong)uVar23" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)uVar23" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (if_statement "if (local_e3 != 0) {\n          uVar26 = uVar26 >> 0x1a;\n          uVar46 = (undefined7)((ulong)pSVar44 >> 8);\n          if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }\n          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }\n          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;\n        }" if (parenthesized_expression "(local_e3 != 0)" ( (binary_expression "local_e3 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar26 = uVar26 >> 0x1a;\n          uVar46 = (undefined7)((ulong)pSVar44 >> 8);\n          if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }\n          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }\n          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;\n        }" { (expression_statement "uVar26 = uVar26 >> 0x1a;" (assignment_expression "uVar26 = uVar26 >> 0x1a" identifier = (binary_expression "uVar26 >> 0x1a" identifier >> number_literal)) ;) (expression_statement "uVar46 = (undefined7)((ulong)pSVar44 >> 8);" (assignment_expression "uVar46 = (undefined7)((ulong)pSVar44 >> 8)" identifier = (call_expression "(undefined7)((ulong)pSVar44 >> 8)" (parenthesized_expression "(undefined7)" ( identifier )) (argument_list "((ulong)pSVar44 >> 8)" ( (binary_expression "(ulong)pSVar44 >> 8" (cast_expression "(ulong)pSVar44" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if (uVar21 == 100) {\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }\n          else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }" if (parenthesized_expression "(uVar21 == 100)" ( (binary_expression "uVar21 == 100" identifier == number_literal) )) (compound_statement "{\n            iVar25 = 7;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);\n          }" { (expression_statement "iVar25 = 7;" (assignment_expression "iVar25 = 7" identifier = number_literal) ;) (expression_statement "pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);" (assignment_expression "pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2)" identifier = (parenthesized_expression "(Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2)" ( (binary_expression "Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2)" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)CONCAT71(uVar46,uVar26 - 6 < 2)" * (ERROR ")" )) (call_expression "CONCAT71(uVar46,uVar26 - 6 < 2)" identifier (argument_list "(uVar46,uVar26 - 6 < 2)" ( identifier , (binary_expression "uVar26 - 6 < 2" (binary_expression "uVar26 - 6" identifier - number_literal) < number_literal) ))))) ))) ;) }) (else_clause "else if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }" else (if_statement "if (uVar21 == 0x85) {\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }\n          else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }" if (parenthesized_expression "(uVar21 == 0x85)" ( (binary_expression "uVar21 == 0x85" identifier == number_literal) )) (compound_statement "{\n            iVar25 = 0x3c;\n            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);\n          }" { (expression_statement "iVar25 = 0x3c;" (assignment_expression "iVar25 = 0x3c" identifier = number_literal) ;) (expression_statement "pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);" (assignment_expression "pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2)" identifier = (parenthesized_expression "(Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2)" ( (binary_expression "Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2)" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)CONCAT71(uVar46,uVar26 - 0x3c < 2)" * (ERROR ")" )) (call_expression "CONCAT71(uVar46,uVar26 - 0x3c < 2)" identifier (argument_list "(uVar46,uVar26 - 0x3c < 2)" ( identifier , (binary_expression "uVar26 - 0x3c < 2" (binary_expression "uVar26 - 0x3c" identifier - number_literal) < number_literal) ))))) ))) ;) }) (else_clause "else {\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }" else (compound_statement "{\n            pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));\n            iVar25 = 0x1d;\n          }" { (expression_statement "pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));" (assignment_expression "pSVar44 = (Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d))" identifier = (call_expression "(Symbol_value<32> *)\n                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d))" (call_expression "(Symbol_value<32> *)\n                      (ulong)" (parenthesized_expression "(Symbol_value<32> *)" ( (binary_expression "Symbol_value<32> *" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*" * identifier)) )) (argument_list "(ulong)" ( identifier ))) (argument_list "((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d))" ( (binary_expression "(uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d)" (cast_expression "(uint)CONCAT71(uVar46,uVar26 == 3)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CONCAT71(uVar46,uVar26 == 3)" identifier (argument_list "(uVar46,uVar26 == 3)" ( identifier , (binary_expression "uVar26 == 3" identifier == number_literal) )))) | (call_expression "(uint)(uVar26 == 0x1d)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar26 == 0x1d)" ( (binary_expression "uVar26 == 0x1d" identifier == number_literal) )))) )))) ;) (expression_statement "iVar25 = 0x1d;" (assignment_expression "iVar25 = 0x1d" identifier = number_literal) ;) }))))) (if_statement "if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }" if (parenthesized_expression "(((char)pSVar44 == '\0') && (!bVar62 || !bVar63))" ( (binary_expression "((char)pSVar44 == '\0') && (!bVar62 || !bVar63)" (parenthesized_expression "((char)pSVar44 == '\0')" ( (binary_expression "(char)pSVar44 == '\0'" (cast_expression "(char)pSVar44" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(!bVar62 || !bVar63)" ( (binary_expression "!bVar62 || !bVar63" (unary_expression "!bVar62" ! identifier) || (unary_expression "!bVar63" ! identifier)) ))) )) (compound_statement "{\n            pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );\n            gold::gold_error(pcVar28);\n            goto LAB_002c7d32;\n          }" { (expression_statement "pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     );" (assignment_expression "pcVar28 = (char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     )" identifier = (cast_expression "(char *)gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     )" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     )" identifier (argument_list "(\n                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                     )" ( (string_literal ""Unsupported jump between ISA modes; consider recompiling with interlinking enabled."" " string_content ") ))))) ;) (labeled_statement "gold::gold_error(pcVar28);" statement_identifier : (ERROR ":" :) (expression_statement "gold_error(pcVar28);" (call_expression "gold_error(pcVar28)" identifier (argument_list "(pcVar28)" ( identifier ))) ;)) (goto_statement "goto LAB_002c7d32;" goto statement_identifier ;) })) (expression_statement "uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;" (assignment_expression "uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a" identifier = (binary_expression "uVar23 & 0x3ffffff | iVar25 << 0x1a" (binary_expression "uVar23 & 0x3ffffff" identifier & number_literal) | (binary_expression "iVar25 << 0x1a" identifier << number_literal))) ;) })) (if_statement "if (gold::parameters->options_ == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n          Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);\n        }" if (parenthesized_expression "(gold::parameters->options_ == (General_options *)0x0)" ( (ERROR "gold::" identifier : :) (binary_expression "parameters->options_ == (General_options *)0x0" (field_expression "parameters->options_" identifier -> field_identifier) == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);\n        }" { comment (expression_statement "Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8);" (comma_expression "Mips_relocate_functions<32,_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8)" (binary_expression "Mips_relocate_functions<32" identifier < number_literal) , (binary_expression "_false>::rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8)" identifier > (ERROR "::" : :) (call_expression "rel26\n                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8)" identifier (argument_list "((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8)" ( (cast_expression "(uchar *)pSVar34" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (parenthesized_expression "(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8)" ( (comma_expression "Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8" (binary_expression "Mips_relobj<32" identifier < number_literal) , (comma_expression "_false> *)object,pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8" (binary_expression "_false> *)object" identifier > (pointer_expression "*)object" * (ERROR ")" )) identifier)) , (comma_expression "pSVar44,uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8" identifier , (comma_expression "uVar23,(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8" identifier , (comma_expression "(bool)uVar57,\n                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8" (cast_expression "(bool)uVar57" ( (type_descriptor "bool" primitive_type) ) identifier) , (comma_expression "(Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8" (cast_expression "(Mips_address)sVar56" ( (type_descriptor "Mips_address" type_identifier) ) identifier) , (comma_expression "(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8" (cast_expression "(bool)in_stack_fffffffffffffeb8" ( (type_descriptor "bool" primitive_type) ) identifier) , (comma_expression "in_stack_fffffffffffffec0,\n                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8" identifier , (comma_expression "(bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8" (cast_expression "(bool)in_stack_fffffffffffffec8" ( (type_descriptor "bool" primitive_type) ) identifier) , (comma_expression "in_stack_fffffffffffffed0,\n                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8" identifier , (comma_expression "SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8" (call_expression "SUB81(in_stack_fffffffffffffed8,0)" identifier (argument_list "(in_stack_fffffffffffffed8,0)" ( identifier , number_literal ))) , (comma_expression "SUB81(in_stack_fffffffffffffee0,0),\n                     (Valtype *)in_stack_fffffffffffffee8" (call_expression "SUB81(in_stack_fffffffffffffee0,0)" identifier (argument_list "(in_stack_fffffffffffffee0,0)" ( identifier , number_literal ))) , (cast_expression "(Valtype *)in_stack_fffffffffffffee8" ( (type_descriptor "Valtype *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))))))))))))) )) ))))) ;) })) (if_statement "if (!bVar62 || !bVar63) goto LAB_002c5ccb;" if (parenthesized_expression "(!bVar62 || !bVar63)" ( (binary_expression "!bVar62 || !bVar63" (unary_expression "!bVar62" ! identifier) || (unary_expression "!bVar63" ! identifier)) )) (goto_statement "goto LAB_002c5ccb;" goto statement_identifier ;)) (expression_statement "SVar27 = STATUS_OKAY;" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ;) (expression_statement "this->calculated_value_ = uVar23;" (assignment_expression "this->calculated_value_ = uVar23" (field_expression "this->calculated_value_" identifier -> field_identifier) = identifier) ;) }))) (goto_statement "goto LAB_002c5940;" goto statement_identifier ;)) (case_statement "case 5:" case number_literal :) (case_statement "case 0x68:" case number_literal :) (case_statement "case 0x86:\n      goto switchD_002c5379_caseD_5;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_5;" goto statement_identifier ;)) (case_statement "case 6:" case number_literal :) (case_statement "case 0x69:" case number_literal :) (case_statement "case 0x87:" case number_literal :) (case_statement "case 0x9d:\n      local_c0 = (ulong)local_c8;\n      in_stack_fffffffffffffed0 = *(uint *)view;\n      uVar23 = (in_stack_fffffffffffffed0 & 0xff0000) >> 8;\n      uVar49 = in_stack_fffffffffffffed0 >> 0x18 | uVar23;\n      in_stack_fffffffffffffee0 = (_List_node_base *)(ulong)uVar49;\n      if (bVar61 != false) {\n        object = (_List_node_base **)(ulong)uVar49;\n        uVar26 = uVar49 - 0x10000;\n        if ((uVar23 & 0x8000) == 0) {\n          uVar26 = uVar49;\n        }\n        local_c0 = (ulong)uVar26;\n      }\n      goto LAB_002c7171;" case number_literal : (expression_statement "local_c0 = (ulong)local_c8;" (assignment_expression "local_c0 = (ulong)local_c8" identifier = (cast_expression "(ulong)local_c8" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "in_stack_fffffffffffffed0 = *(uint *)view;" (assignment_expression "in_stack_fffffffffffffed0 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar23 = (in_stack_fffffffffffffed0 & 0xff0000) >> 8;" (assignment_expression "uVar23 = (in_stack_fffffffffffffed0 & 0xff0000) >> 8" identifier = (binary_expression "(in_stack_fffffffffffffed0 & 0xff0000) >> 8" (parenthesized_expression "(in_stack_fffffffffffffed0 & 0xff0000)" ( (binary_expression "in_stack_fffffffffffffed0 & 0xff0000" identifier & number_literal) )) >> number_literal)) ;) (expression_statement "uVar49 = in_stack_fffffffffffffed0 >> 0x18 | uVar23;" (assignment_expression "uVar49 = in_stack_fffffffffffffed0 >> 0x18 | uVar23" identifier = (binary_expression "in_stack_fffffffffffffed0 >> 0x18 | uVar23" (binary_expression "in_stack_fffffffffffffed0 >> 0x18" identifier >> number_literal) | identifier)) ;) (expression_statement "in_stack_fffffffffffffee0 = (_List_node_base *)(ulong)uVar49;" (assignment_expression "in_stack_fffffffffffffee0 = (_List_node_base *)(ulong)uVar49" identifier = (cast_expression "(_List_node_base *)(ulong)uVar49" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)uVar49" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (if_statement "if (bVar61 != false) {\n        object = (_List_node_base **)(ulong)uVar49;\n        uVar26 = uVar49 - 0x10000;\n        if ((uVar23 & 0x8000) == 0) {\n          uVar26 = uVar49;\n        }\n        local_c0 = (ulong)uVar26;\n      }" if (parenthesized_expression "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) )) (compound_statement "{\n        object = (_List_node_base **)(ulong)uVar49;\n        uVar26 = uVar49 - 0x10000;\n        if ((uVar23 & 0x8000) == 0) {\n          uVar26 = uVar49;\n        }\n        local_c0 = (ulong)uVar26;\n      }" { (expression_statement "object = (_List_node_base **)(ulong)uVar49;" (assignment_expression "object = (_List_node_base **)(ulong)uVar49" identifier = (cast_expression "(_List_node_base **)(ulong)uVar49" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)uVar49" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "uVar26 = uVar49 - 0x10000;" (assignment_expression "uVar26 = uVar49 - 0x10000" identifier = (binary_expression "uVar49 - 0x10000" identifier - number_literal)) ;) (if_statement "if ((uVar23 & 0x8000) == 0) {\n          uVar26 = uVar49;\n        }" if (parenthesized_expression "((uVar23 & 0x8000) == 0)" ( (binary_expression "(uVar23 & 0x8000) == 0" (parenthesized_expression "(uVar23 & 0x8000)" ( (binary_expression "uVar23 & 0x8000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n          uVar26 = uVar49;\n        }" { (expression_statement "uVar26 = uVar49;" (assignment_expression "uVar26 = uVar49" identifier = identifier) ;) })) (expression_statement "local_c0 = (ulong)uVar26;" (assignment_expression "local_c0 = (ulong)uVar26" identifier = (cast_expression "(ulong)uVar26" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) })) (goto_statement "goto LAB_002c7171;" goto statement_identifier ;)) (case_statement "case 7:" case number_literal :) (case_statement "case 8:" case number_literal :) (case_statement "case 0x65:" case number_literal :) (case_statement "case 0x88:" case number_literal :) (case_statement "case 0x89:" case number_literal :) (case_statement "case 0xac:\n      local_c0._0_4_ = local_c8;\n      pSVar34 = target->gp_;\n      if (pSVar34 != (Sized_symbol<32> *)0x0) goto LAB_002c7253;\n      VVar39 = 0;\nLAB_002c7297:\n      uVar49 = *(uint *)view;\n      uVar26 = (uVar49 & 0xff0000) >> 8;\n      uVar23 = uVar49 >> 0x18 | uVar26;\n      uVar49 = uVar23 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n      local_c8 = (uint)local_c0;\n      if (bVar61 != false) {\n        if (uVar21 == 0xac) {\n          local_c0._0_4_ = uVar49 * 4 & 0x1fc;\n        }\n        else {\n          local_c0._0_4_ = uVar23 - 0x10000;\n          if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }\n        }\n      }\n      goto LAB_002c72d4;" case number_literal : (expression_statement "local_c0._0_4_ = local_c8;" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) (expression_statement "pSVar34 = target->gp_;" (assignment_expression "pSVar34 = target->gp_" identifier = (field_expression "target->gp_" identifier -> field_identifier)) ;) (if_statement "if (pSVar34 != (Sized_symbol<32> *)0x0) goto LAB_002c7253;" if (parenthesized_expression "(pSVar34 != (Sized_symbol<32> *)0x0)" ( (binary_expression "pSVar34 != (Sized_symbol<32> *)0x0)" identifier != (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) )) (goto_statement "goto LAB_002c7253;" goto statement_identifier ;)) (expression_statement "VVar39 = 0;" (assignment_expression "VVar39 = 0" identifier = number_literal) ;) (labeled_statement "LAB_002c7297:\n      uVar49 = *(uint *)view;" statement_identifier : (expression_statement "uVar49 = *(uint *)view;" (assignment_expression "uVar49 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;)) (expression_statement "uVar26 = (uVar49 & 0xff0000) >> 8;" (assignment_expression "uVar26 = (uVar49 & 0xff0000) >> 8" identifier = (binary_expression "(uVar49 & 0xff0000) >> 8" (parenthesized_expression "(uVar49 & 0xff0000)" ( (binary_expression "uVar49 & 0xff0000" identifier & number_literal) )) >> number_literal)) ;) (expression_statement "uVar23 = uVar49 >> 0x18 | uVar26;" (assignment_expression "uVar23 = uVar49 >> 0x18 | uVar26" identifier = (binary_expression "uVar49 >> 0x18 | uVar26" (binary_expression "uVar49 >> 0x18" identifier >> number_literal) | identifier)) ;) (expression_statement "uVar49 = uVar23 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;" (assignment_expression "uVar49 = uVar23 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" identifier = (binary_expression "uVar23 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "uVar23 | (uVar49 & 0xff00) << 8" identifier | (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar49 << 0x18" identifier << number_literal))) ;) (expression_statement "local_c8 = (uint)local_c0;" (assignment_expression "local_c8 = (uint)local_c0" identifier = (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (bVar61 != false) {\n        if (uVar21 == 0xac) {\n          local_c0._0_4_ = uVar49 * 4 & 0x1fc;\n        }\n        else {\n          local_c0._0_4_ = uVar23 - 0x10000;\n          if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }\n        }\n      }" if (parenthesized_expression "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) )) (compound_statement "{\n        if (uVar21 == 0xac) {\n          local_c0._0_4_ = uVar49 * 4 & 0x1fc;\n        }\n        else {\n          local_c0._0_4_ = uVar23 - 0x10000;\n          if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }\n        }\n      }" { (if_statement "if (uVar21 == 0xac) {\n          local_c0._0_4_ = uVar49 * 4 & 0x1fc;\n        }\n        else {\n          local_c0._0_4_ = uVar23 - 0x10000;\n          if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }\n        }" if (parenthesized_expression "(uVar21 == 0xac)" ( (binary_expression "uVar21 == 0xac" identifier == number_literal) )) (compound_statement "{\n          local_c0._0_4_ = uVar49 * 4 & 0x1fc;\n        }" { (expression_statement "local_c0._0_4_ = uVar49 * 4 & 0x1fc;" (assignment_expression "local_c0._0_4_ = uVar49 * 4 & 0x1fc" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar49 * 4 & 0x1fc" (binary_expression "uVar49 * 4" identifier * number_literal) & number_literal)) ;) }) (else_clause "else {\n          local_c0._0_4_ = uVar23 - 0x10000;\n          if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }\n        }" else (compound_statement "{\n          local_c0._0_4_ = uVar23 - 0x10000;\n          if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }\n        }" { (expression_statement "local_c0._0_4_ = uVar23 - 0x10000;" (assignment_expression "local_c0._0_4_ = uVar23 - 0x10000" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar23 - 0x10000" identifier - number_literal)) ;) (if_statement "if ((uVar26 & 0x8000) == 0) {\n            local_c0._0_4_ = uVar23;\n          }" if (parenthesized_expression "((uVar26 & 0x8000) == 0)" ( (binary_expression "(uVar26 & 0x8000) == 0" (parenthesized_expression "(uVar26 & 0x8000)" ( (binary_expression "uVar26 & 0x8000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            local_c0._0_4_ = uVar23;\n          }" { (expression_statement "local_c0._0_4_ = uVar23;" (assignment_expression "local_c0._0_4_ = uVar23" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) })) }))) })) (goto_statement "goto LAB_002c72d4;" goto statement_identifier ;)) (case_statement "case 9:" case number_literal :) (case_statement "case 0x66:" case number_literal :) (case_statement "case 0x8a:\n      goto switchD_002c5379_caseD_9;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_9;" goto statement_identifier ;)) (case_statement "case 10:\n      goto LAB_002c6a55;" case number_literal : (goto_statement "goto LAB_002c6a55;" goto statement_identifier ;)) (case_statement "case 0xb:" case number_literal :) (case_statement "case 0x67:" case number_literal :) (case_statement "case 0x8e:\n      goto switchD_002c5379_caseD_b;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_b;" goto statement_identifier ;)) (case_statement "case 0xc:\n      goto switchD_002c5379_caseD_c;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_c;" goto statement_identifier ;)) (case_statement "case 0x12:\n      goto switchD_002c5379_caseD_12;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_12;" goto statement_identifier ;)) (case_statement "case 0x13:" case number_literal :) (case_statement "case 0x91:" case number_literal :) (case_statement "case 0xf9:\n      goto switchD_002c5379_caseD_13;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_13;" goto statement_identifier ;)) (case_statement "case 0x14:" case number_literal :) (case_statement "case 0x92:\n      goto switchD_002c5379_caseD_14;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_14;" goto statement_identifier ;)) (case_statement "case 0x15:" case number_literal :) (case_statement "case 0x93:\n      goto switchD_002c5379_caseD_15;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_15;" goto statement_identifier ;)) (case_statement "case 0x16:" case number_literal :) (case_statement "case 0x1e:" case number_literal :) (case_statement "case 0x94:" case number_literal :) (case_statement "case 0x99:\n      goto switchD_002c5379_caseD_16;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_16;" goto statement_identifier ;)) (case_statement "case 0x17:" case number_literal :) (case_statement "case 0x1f:" case number_literal :) (case_statement "case 0x95:" case number_literal :) (case_statement "case 0x9a:\n      goto switchD_002c5379_caseD_17;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_17;" goto statement_identifier ;)) (case_statement "case 0x18:" case number_literal :) (case_statement "case 0x96:\n      local_c0._0_4_ = local_c8;\n      if (bVar61 != false) {\n        uVar10 = *(undefined8 *)view;\n        local_c0._0_4_ =\n             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }\n      goto LAB_002c6b1a;" case number_literal : (expression_statement "local_c0._0_4_ = local_c8;" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) (if_statement "if (bVar61 != false) {\n        uVar10 = *(undefined8 *)view;\n        local_c0._0_4_ =\n             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }" if (parenthesized_expression "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) )) (compound_statement "{\n        uVar10 = *(undefined8 *)view;\n        local_c0._0_4_ =\n             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }" { (expression_statement "uVar10 = *(undefined8 *)view;" (assignment_expression "uVar10 = *(undefined8 *)view" identifier = (pointer_expression "*(undefined8 *)view" * (cast_expression "(undefined8 *)view" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "local_c0._0_4_ =\n             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;" (assignment_expression "local_c0._0_4_ =\n             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "(uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000" (binary_expression "(uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n             (uint)((ulong)uVar10 >> 0x18) & 0xff0000" (binary_expression "(uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8" (call_expression "(uint)(byte)((ulong)uVar10 >> 0x38)" (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(byte)" ( identifier ))) (argument_list "((ulong)uVar10 >> 0x38)" ( (binary_expression "(ulong)uVar10 >> 0x38" (cast_expression "(ulong)uVar10" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) ))) | (binary_expression "((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8" (parenthesized_expression "((uint)((ulong)uVar10 >> 0x20) & 0xff0000)" ( (binary_expression "(uint)((ulong)uVar10 >> 0x20) & 0xff0000" (call_expression "(uint)((ulong)uVar10 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulong)uVar10 >> 0x20)" ( (binary_expression "(ulong)uVar10 >> 0x20" (cast_expression "(ulong)uVar10" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) ))) & number_literal) )) >> number_literal)) | (binary_expression "(uint)((ulong)uVar10 >> 0x18) & 0xff0000" (call_expression "(uint)((ulong)uVar10 >> 0x18)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulong)uVar10 >> 0x18)" ( (binary_expression "(ulong)uVar10 >> 0x18" (cast_expression "(ulong)uVar10" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) ))) & number_literal)) | (binary_expression "(uint)((ulong)uVar10 >> 8) & 0xff000000" (call_expression "(uint)((ulong)uVar10 >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulong)uVar10 >> 8)" ( (binary_expression "(ulong)uVar10 >> 8" (cast_expression "(ulong)uVar10" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) ))) & number_literal))) ;) })) (goto_statement "goto LAB_002c6b1a;" goto statement_identifier ;)) (case_statement "case 0x1c:" case number_literal :) (case_statement "case 0x97:\n      goto LAB_002c59bd;" case number_literal : (goto_statement "goto LAB_002c59bd;" goto statement_identifier ;)) (case_statement "case 0x1d:" case number_literal :) (case_statement "case 0x98:\n      goto LAB_002c6b55;" case number_literal : (goto_statement "goto LAB_002c6b55;" goto statement_identifier ;)) (case_statement "case 0x25:" case number_literal :) (case_statement "case 0x9c:\n      goto switchD_002c5379_caseD_25;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_25;" goto statement_identifier ;)) (case_statement "case 0x27:" case number_literal :) (case_statement "case 0x29:\n      goto switchD_002c5379_caseD_27;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_27;" goto statement_identifier ;)) (case_statement "case 0x2a:" case number_literal :) (case_statement "case 0x6a:" case number_literal :) (case_statement "case 0xa2:\n      goto switchD_002c5379_caseD_2a;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2a;" goto statement_identifier ;)) (case_statement "case 0x2b:" case number_literal :) (case_statement "case 0x6b:" case number_literal :) (case_statement "case 0xa3:\n      goto switchD_002c5379_caseD_2b;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2b;" goto statement_identifier ;)) (case_statement "case 0x2c:" case number_literal :) (case_statement "case 0x6c:" case number_literal :) (case_statement "case 0xa4:\n      goto switchD_002c5379_caseD_2c;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2c;" goto statement_identifier ;)) (case_statement "case 0x2d:" case number_literal :) (case_statement "case 0x6d:" case number_literal :) (case_statement "case 0xa5:\n      goto switchD_002c5379_caseD_2d;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2d;" goto statement_identifier ;)) (case_statement "case 0x2e:" case number_literal :) (case_statement "case 0x6e:" case number_literal :) (case_statement "case 0xa6:\n      goto switchD_002c5379_caseD_2e;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2e;" goto statement_identifier ;)) (case_statement "case 0x2f:" case number_literal :) (case_statement "case 0x30:\n      goto switchD_002c5379_caseD_2f;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2f;" goto statement_identifier ;)) (case_statement "case 0x31:" case number_literal :) (case_statement "case 0x6f:" case number_literal :) (case_statement "case 0xa9:\n      goto switchD_002c5379_caseD_31;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_31;" goto statement_identifier ;)) (case_statement "case 0x32:" case number_literal :) (case_statement "case 0x70:" case number_literal :) (case_statement "case 0xaa:\n      goto switchD_002c5379_caseD_32;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_32;" goto statement_identifier ;)) (case_statement "case 0x3c:\n      goto LAB_002c6f06;" case number_literal : (goto_statement "goto LAB_002c6f06;" goto statement_identifier ;)) (case_statement "case 0x3d:\n      goto LAB_002c6fd2;" case number_literal : (goto_statement "goto LAB_002c6fd2;" goto statement_identifier ;)) (case_statement "case 0x3e:\n      goto LAB_002c6d53;" case number_literal : (goto_statement "goto LAB_002c6d53;" goto statement_identifier ;)) (case_statement "case 0x3f:\n      goto LAB_002c6e24;" case number_literal : (goto_statement "goto LAB_002c6e24;" goto statement_identifier ;)) (case_statement "case 0x40:\n      goto switchD_002c5379_caseD_40;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_40;" goto statement_identifier ;)) (case_statement "case 0x41:\n      goto LAB_002c6ccf;" case number_literal : (goto_statement "goto LAB_002c6ccf;" goto statement_identifier ;)) (case_statement "case 0x8b:\n      goto LAB_002c6bb8;" case number_literal : (goto_statement "goto LAB_002c6bb8;" goto statement_identifier ;)) (case_statement "case 0x8c:\n      goto LAB_002c6c3e;" case number_literal : (goto_statement "goto LAB_002c6c3e;" goto statement_identifier ;)) (case_statement "case 0x8d:\n      goto LAB_002c69c5;" case number_literal : (goto_statement "goto LAB_002c69c5;" goto statement_identifier ;)) (case_statement "case 0xf8:\n      if (bVar61 != false) {\n        uVar21 = *(uint *)view;\n        local_c0._0_4_ =\n             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n        goto LAB_002c6ed9;\n      }\nLAB_002c8390:\n      local_c0._0_4_ = local_c8;\n      goto LAB_002c6ed9;" case number_literal : (if_statement "if (bVar61 != false) {\n        uVar21 = *(uint *)view;\n        local_c0._0_4_ =\n             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n        goto LAB_002c6ed9;\n      }" if (parenthesized_expression "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) )) (compound_statement "{\n        uVar21 = *(uint *)view;\n        local_c0._0_4_ =\n             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n        goto LAB_002c6ed9;\n      }" { (expression_statement "uVar21 = *(uint *)view;" (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "local_c0._0_4_ =\n             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;" (assignment_expression "local_c0._0_4_ =\n             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar21 << 0x18" identifier << number_literal))) ;) (goto_statement "goto LAB_002c6ed9;" goto statement_identifier ;) })) (labeled_statement "LAB_002c8390:\n      local_c0._0_4_ = local_c8;" statement_identifier : (expression_statement "local_c0._0_4_ = local_c8;" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;)) (goto_statement "goto LAB_002c6ed9;" goto statement_identifier ;)) })) })))) (expression_statement "local_c8 = this->calculated_value_;" (assignment_expression "local_c8 = this->calculated_value_" identifier = (field_expression "this->calculated_value_" identifier -> field_identifier)) ;) (expression_statement "object = (_List_node_base **)(ulong)local_c8;" (assignment_expression "object = (_List_node_base **)(ulong)local_c8" identifier = (cast_expression "(_List_node_base **)(ulong)local_c8" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)local_c8" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "this->calculate_only_ = (bool)cVar47;" (assignment_expression "this->calculate_only_ = (bool)cVar47" (field_expression "this->calculate_only_" identifier -> field_identifier) = (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier)) ;) (expression_statement "local_c0 = (ulong)local_c8;" (assignment_expression "local_c0 = (ulong)local_c8" identifier = (cast_expression "(ulong)local_c8" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "local_c0._0_4_ = local_c8;" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) switch (parenthesized_expression "(uVar21)" ( identifier )) { (case_statement "default:\n    bVar61 = false;\nswitchD_002c5379_caseD_0:\n    pcVar28 = (char *)gettext("unsupported reloc %u");\n    object = (_List_node_base **)relnum;\n    gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar21);\n    break;" default : (expression_statement "bVar61 = false;" (assignment_expression "bVar61 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_0:\n    pcVar28 = (char *)gettext("unsupported reloc %u");" statement_identifier : (expression_statement "pcVar28 = (char *)gettext("unsupported reloc %u");" (assignment_expression "pcVar28 = (char *)gettext("unsupported reloc %u")" identifier = (cast_expression "(char *)gettext("unsupported reloc %u")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext("unsupported reloc %u")" identifier (argument_list "("unsupported reloc %u")" ( (string_literal ""unsupported reloc %u"" " string_content ") ))))) ;)) (expression_statement "object = (_List_node_base **)relnum;" (assignment_expression "object = (_List_node_base **)relnum" identifier = (cast_expression "(_List_node_base **)relnum" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (labeled_statement "gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar21);" statement_identifier : (ERROR ":" :) (expression_statement "gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar21);" (comma_expression "gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar21)" (binary_expression "gold_error_at_location<32" identifier < number_literal) , (binary_expression "_true>(relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar21)" identifier > (parenthesized_expression "(relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar21)" ( (comma_expression "relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar21" identifier , (comma_expression "relnum,(ulong)uVar48,pcVar28,(ulong)uVar21" identifier , (comma_expression "(ulong)uVar48,pcVar28,(ulong)uVar21" (cast_expression "(ulong)uVar48" ( (type_descriptor "ulong" type_identifier) ) identifier) , (comma_expression "pcVar28,(ulong)uVar21" identifier , (cast_expression "(ulong)uVar21" ( (type_descriptor "ulong" type_identifier) ) identifier))))) )))) ;)) (break_statement "break;" break ;)) (case_statement "case 1:\n    bVar61 = false;\n    local_c0._0_4_ = local_c8;\nLAB_002c70ec:\n    object = (_List_node_base **)this_00;\n    uVar23 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    if ((bool)cVar47) goto LAB_002c59a8;\n    *(ushort *)view = (ushort)uVar23 << 8 | (ushort)uVar23 >> 8;\n    SVar27 = (Status)(0xffff < uVar23 + 0x8000);\n    break;" case number_literal : (expression_statement "bVar61 = false;" (assignment_expression "bVar61 = false" identifier = false) ;) (expression_statement "local_c0._0_4_ = local_c8;" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) (labeled_statement "LAB_002c70ec:\n    object = (_List_node_base **)this_00;" statement_identifier : (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;)) (expression_statement "uVar23 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);" (binary_expression "uVar23 = gold::Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" (binary_expression "uVar23 = gold::Symbol_value<32>::value<true" (binary_expression "uVar23 = gold::Symbol_value<32>::value" (binary_expression "uVar23 = gold::Symbol_value<32" (assignment_expression "uVar23 = gold" identifier = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ))) ;) (if_statement "if ((bool)cVar47) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "*(ushort *)view = (ushort)uVar23 << 8 | (ushort)uVar23 >> 8;" (assignment_expression "*(ushort *)view = (ushort)uVar23 << 8 | (ushort)uVar23 >> 8" (pointer_expression "*(ushort *)view" * (cast_expression "(ushort *)view" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "(ushort)uVar23 << 8 | (ushort)uVar23 >> 8" (binary_expression "(ushort)uVar23 << 8" (cast_expression "(ushort)uVar23" ( (type_descriptor "ushort" type_identifier) ) identifier) << number_literal) | (binary_expression "(ushort)uVar23 >> 8" (cast_expression "(ushort)uVar23" ( (type_descriptor "ushort" type_identifier) ) identifier) >> number_literal))) ;) (expression_statement "SVar27 = (Status)(0xffff < uVar23 + 0x8000);" (assignment_expression "SVar27 = (Status)(0xffff < uVar23 + 0x8000)" identifier = (call_expression "(Status)(0xffff < uVar23 + 0x8000)" (parenthesized_expression "(Status)" ( identifier )) (argument_list "(0xffff < uVar23 + 0x8000)" ( (binary_expression "0xffff < uVar23 + 0x8000" number_literal < (binary_expression "uVar23 + 0x8000" identifier + number_literal)) )))) ;) (break_statement "break;" break ;)) case number_literal : (expression_statement "bVar61 = false;" (assignment_expression "bVar61 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_2:\n    object = (_List_node_base **)0x2;" statement_identifier : (expression_statement "object = (_List_node_base **)0x2;" (assignment_expression "object = (_List_node_base **)0x2" identifier = (cast_expression "(_List_node_base **)0x2" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;)) (expression_statement "bVar62 = should_apply_static_reloc\n                       ((Relocate *)gsym,(Mips_symbol<32> *)0x2,(uint)output_section,\n                        (Output_section *)target,pTVar54);" (assignment_expression "bVar62 = should_apply_static_reloc\n                       ((Relocate *)gsym,(Mips_symbol<32> *)0x2,(uint)output_section,\n                        (Output_section *)target,pTVar54)" identifier = (call_expression "should_apply_static_reloc\n                       ((Relocate *)gsym,(Mips_symbol<32> *)0x2,(uint)output_section,\n                        (Output_section *)target,pTVar54)" identifier (argument_list "((Relocate *)gsym,(Mips_symbol<32> *)0x2,(uint)output_section,\n                        (Output_section *)target,pTVar54)" ( (cast_expression "(Relocate *)gsym" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (parenthesized_expression "(Mips_symbol<32> *)0x2,(uint)output_section,\n                        (Output_section *)target,pTVar54)" ( (comma_expression "Mips_symbol<32> *)0x2,(uint)output_section,\n                        (Output_section *)target,pTVar54" (binary_expression "Mips_symbol<32> *)0x2" (binary_expression "Mips_symbol<32" identifier < number_literal) > (pointer_expression "*)0x2" * (ERROR ")" )) number_literal)) , (comma_expression "(uint)output_section,\n                        (Output_section *)target,pTVar54" (cast_expression "(uint)output_section" ( (type_descriptor "uint" type_identifier) ) identifier) , (comma_expression "(Output_section *)target,pTVar54" (cast_expression "(Output_section *)target" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier))) )) )))) ;) (if_statement "if (bVar62) {\n      bVar62 = this->calculate_only_;\n      uVar49 = local_c8;\n      if (bVar61 != false) {\n        uVar49 = *(uint *)view;\n        uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18\n        ;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n      if (bVar62 == false) {\n        SVar27 = STATUS_OKAY;\n        *(Value *)view =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }\n      else {\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = VVar20;\n      }\n    }" if (parenthesized_expression "(bVar62)" ( identifier )) (compound_statement "{\n      bVar62 = this->calculate_only_;\n      uVar49 = local_c8;\n      if (bVar61 != false) {\n        uVar49 = *(uint *)view;\n        uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18\n        ;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);\n      if (bVar62 == false) {\n        SVar27 = STATUS_OKAY;\n        *(Value *)view =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }\n      else {\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = VVar20;\n      }\n    }" { (expression_statement "bVar62 = this->calculate_only_;" (assignment_expression "bVar62 = this->calculate_only_" identifier = (field_expression "this->calculate_only_" identifier -> field_identifier)) ;) (expression_statement "uVar49 = local_c8;" (assignment_expression "uVar49 = local_c8" identifier = identifier) ;) (if_statement "if (bVar61 != false) {\n        uVar49 = *(uint *)view;\n        uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18\n        ;\n      }" if (parenthesized_expression "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) )) (compound_statement "{\n        uVar49 = *(uint *)view;\n        uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18\n        ;\n      }" { (expression_statement "uVar49 = *(uint *)view;" (assignment_expression "uVar49 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18\n        ;" (assignment_expression "uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" identifier = (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8" (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8" (binary_expression "uVar49 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar49 & 0xff0000) >> 8" (parenthesized_expression "(uVar49 & 0xff0000)" ( (binary_expression "uVar49 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar49 << 0x18" identifier << number_literal))) ;) })) (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49)" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true" (binary_expression "VVar20 = gold::Symbol_value<32>::value" (binary_expression "VVar20 = gold::Symbol_value<32" (assignment_expression "VVar20 = gold" identifier = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,uVar49)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,uVar49" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,uVar49" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ))) ;) (if_statement "if (bVar62 == false) {\n        SVar27 = STATUS_OKAY;\n        *(Value *)view =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }\n      else {\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = VVar20;\n      }" if (parenthesized_expression "(bVar62 == false)" ( (binary_expression "bVar62 == false" identifier == false) )) (compound_statement "{\n        SVar27 = STATUS_OKAY;\n        *(Value *)view =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }" { (expression_statement "SVar27 = STATUS_OKAY;" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ;) (expression_statement "*(Value *)view =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;" (assignment_expression "*(Value *)view =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18" (pointer_expression "*(Value *)view" * (cast_expression "(Value *)view" ( (type_descriptor "Value *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18" (binary_expression "VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8" (binary_expression "VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8" (binary_expression "VVar20 >> 0x18" identifier >> number_literal) | (binary_expression "(VVar20 & 0xff0000) >> 8" (parenthesized_expression "(VVar20 & 0xff0000)" ( (binary_expression "VVar20 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(VVar20 & 0xff00) << 8" (parenthesized_expression "(VVar20 & 0xff00)" ( (binary_expression "VVar20 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "VVar20 << 0x18" identifier << number_literal))) ;) }) (else_clause "else {\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = VVar20;\n      }" else (compound_statement "{\n        SVar27 = STATUS_OKAY;\n        this->calculated_value_ = VVar20;\n      }" { (expression_statement "SVar27 = STATUS_OKAY;" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ;) (expression_statement "this->calculated_value_ = VVar20;" (assignment_expression "this->calculated_value_ = VVar20" (field_expression "this->calculated_value_" identifier -> field_identifier) = identifier) ;) }))) })) (if_statement "if ((gsym == (Sized_symbol<32> *)0x0) ||\n       (((bVar18 = (byte)(gsym->super_Symbol).field_0x39 >> 2, (bVar18 & 0x3c) != 0x3c &&\n         ((bVar18 & 0x30) != 0x20)) || (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 1))))\n    break;" if (parenthesized_expression "((gsym == (Sized_symbol<32> *)0x0) ||\n       (((bVar18 = (byte)(gsym->super_Symbol).field_0x39 >> 2, (bVar18 & 0x3c) != 0x3c &&\n         ((bVar18 & 0x30) != 0x20)) || (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 1))))" ( (parenthesized_expression "(gsym == (Sized_symbol<32> *)0x0) ||\n       (((bVar18 = (byte)(gsym->super_Symbol).field_0x39 >> 2, (bVar18 & 0x3c) != 0x3c &&\n         ((bVar18 & 0x30) != 0x20)) || (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 1))))" ( (binary_expression "gsym == (Sized_symbol<32> *)0x0) ||\n       (((bVar18 = (byte)(gsym->super_Symbol).field_0x39 >> 2, (bVar18 & 0x3c) != 0x3c &&\n         ((bVar18 & 0x30) != 0x20)) || (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 1)))" (binary_expression "gsym == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) || (parenthesized_expression "(((bVar18 = (byte)(gsym->super_Symbol).field_0x39 >> 2, (bVar18 & 0x3c) != 0x3c &&\n         ((bVar18 & 0x30) != 0x20)) || (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 1)))" ( (parenthesized_expression "((bVar18 = (byte)(gsym->super_Symbol).field_0x39 >> 2, (bVar18 & 0x3c) != 0x3c &&\n         ((bVar18 & 0x30) != 0x20)) || (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 1))" ( (binary_expression "(bVar18 = (byte)(gsym->super_Symbol).field_0x39 >> 2, (bVar18 & 0x3c) != 0x3c &&\n         ((bVar18 & 0x30) != 0x20)) || (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 1)" (parenthesized_expression "(bVar18 = (byte)(gsym->super_Symbol).field_0x39 >> 2, (bVar18 & 0x3c) != 0x3c &&\n         ((bVar18 & 0x30) != 0x20))" ( (comma_expression "bVar18 = (byte)(gsym->super_Symbol).field_0x39 >> 2, (bVar18 & 0x3c) != 0x3c &&\n         ((bVar18 & 0x30) != 0x20)" (assignment_expression "bVar18 = (byte)(gsym->super_Symbol).field_0x39 >> 2" identifier = (binary_expression "(byte)(gsym->super_Symbol).field_0x39 >> 2" (field_expression "(byte)(gsym->super_Symbol).field_0x39" (call_expression "(byte)(gsym->super_Symbol)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) ))) . field_identifier) >> number_literal)) , (binary_expression "(bVar18 & 0x3c) != 0x3c &&\n         ((bVar18 & 0x30) != 0x20)" (binary_expression "(bVar18 & 0x3c) != 0x3c" (parenthesized_expression "(bVar18 & 0x3c)" ( (binary_expression "bVar18 & 0x3c" identifier & number_literal) )) != number_literal) && (parenthesized_expression "((bVar18 & 0x30) != 0x20)" ( (binary_expression "(bVar18 & 0x30) != 0x20" (parenthesized_expression "(bVar18 & 0x30)" ( (binary_expression "bVar18 & 0x30" identifier & number_literal) )) != number_literal) )))) )) || (parenthesized_expression "(*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 1)" ( (binary_expression "*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 1" (pointer_expression "*(int *)((long)&gsym[1].super_Symbol.u1_ + 4)" * (cast_expression "(int *)((long)&gsym[1].super_Symbol.u1_ + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&gsym[1].super_Symbol.u1_ + 4)" ( (binary_expression "(long)&gsym[1].super_Symbol.u1_ + 4" (cast_expression "(long)&gsym[1].super_Symbol.u1_" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&gsym[1].super_Symbol.u1_" & (field_expression "gsym[1].super_Symbol.u1_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) + number_literal) )))) != number_literal) ))) )) ))) )) )) (break_statement "break;" break ;)) (expression_statement "pMVar53 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_;" (assignment_expression "pMVar53 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_" identifier = (binary_expression "*(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_" (pointer_expression "*(Mips_relobj<32,_false> **)" * (parenthesized_expression "(Mips_relobj<32,_false> **)" ( (comma_expression "Mips_relobj<32,_false> **" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> **" identifier > (pointer_expression "**" * (pointer_expression "*" * identifier)))) ))) & (field_expression "gsym[1].super_Symbol.got_offsets_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) ;) if (parenthesized_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) { (if_statement "if (*(char *)&gsym[1].super_Symbol.name_ == '\0') {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2e46,"relocate");\n      }" if (parenthesized_expression "(*(char *)&gsym[1].super_Symbol.name_ == '\0')" ( (binary_expression "*(char *)&gsym[1].super_Symbol.name_ == '\0'" (pointer_expression "*(char *)&gsym[1].super_Symbol.name_" * (cast_expression "(char *)&gsym[1].super_Symbol.name_" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&gsym[1].super_Symbol.name_" & (field_expression "gsym[1].super_Symbol.name_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier)))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2e46,"relocate");\n      }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/mips.cc",0x2e46,"relocate");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/mips.cc",0x2e46,"relocate");" (call_expression "do_gold_unreachable("../../gold/mips.cc",0x2e46,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2e46,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;)) })) (assignment_expression "symval.u_.value =\n           Mips16_stub_section<32" (field_expression "symval.u_.value" (field_expression "symval.u_" identifier . field_identifier) . field_identifier) = (binary_expression "Mips16_stub_section<32" identifier < number_literal)) , identifier > (ERROR "::" : :) identifier ( ( (binary_expression "Mips16_stub_section<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , ( (ERROR "Mips16_stub_section<32,_true> *)\n                      &(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_);\n      psymval = &symval;\n    }\n    local_e8 = gsym[1].super_Symbol.u2_.shndx;" (comma_expression "Mips16_stub_section<32,_true> *)\n                      &(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_)" (binary_expression "Mips16_stub_section<32" identifier < number_literal) , (binary_expression "_true> *)\n                      &(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_)" identifier > (pointer_expression "*)\n                      &(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_)" * (ERROR ")" )) (pointer_expression "&(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_)" & (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_)" ( (field_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.name_" (field_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )" ( (comma_expression "Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) )))))) ; (assignment_expression "psymval = &symval" identifier = (pointer_expression "&symval" & identifier)) ; } (assignment_expression "local_e8 = gsym[1].super_Symbol.u2_.shndx" identifier = (field_expression "gsym[1].super_Symbol.u2_.shndx" (field_expression "gsym[1].super_Symbol.u2_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier)) ;) (binary_expression "pMVar51 = target->got_;\n    if (pMVar51 != (Mips_output_data_got<32,_true> *)0x0) goto LAB_002c6275;\n    goto LAB_002c638e;\n  case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/mips.cc",0x2e62,"relocate");\n  case 4:\n  case 100:\n  case 0x85:\n    bVar61 = false;\n    bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n    uVar49 = *(uint *)view;\n    uVar26 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    goto LAB_002c7644;\n  case 5:\n  case 0x68:\n  case 0x86:\n    goto switchD_002c4f87_caseD_5;\n  case 6:\n  case 0x69:\n  case 0x87:\n  case 0x9d:\n    bVar61 = false;\n    in_stack_fffffffffffffed0 = *(uint *)view;\n    in_stack_fffffffffffffee0 =\n         (_List_node_base *)\n         (ulong)(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8);\nLAB_002c7171:\n    if (rel_type == 9) {\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n      }\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);\n      }\n    }\n    if (local_f8._0_1_ == false) {\n      object = (_List_node_base **)this_00;\n      uVar23 = gold::Symbol_value<32>::value<true" (binary_expression "pMVar51 = target->got_;\n    if (pMVar51 != (Mips_output_data_got<32,_true> *)0x0) goto LAB_002c6275;\n    goto LAB_002c638e;\n  case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/mips.cc",0x2e62,"relocate");\n  case 4:\n  case 100:\n  case 0x85:\n    bVar61 = false;\n    bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n    uVar49 = *(uint *)view;\n    uVar26 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    goto LAB_002c7644;\n  case 5:\n  case 0x68:\n  case 0x86:\n    goto switchD_002c4f87_caseD_5;\n  case 6:\n  case 0x69:\n  case 0x87:\n  case 0x9d:\n    bVar61 = false;\n    in_stack_fffffffffffffed0 = *(uint *)view;\n    in_stack_fffffffffffffee0 =\n         (_List_node_base *)\n         (ulong)(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8);\nLAB_002c7171:\n    if (rel_type == 9) {\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n      }\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);\n      }\n    }\n    if (local_f8._0_1_ == false) {\n      object = (_List_node_base **)this_00;\n      uVar23 = gold::Symbol_value<32>::value" (binary_expression "pMVar51 = target->got_;\n    if (pMVar51 != (Mips_output_data_got<32,_true> *)0x0) goto LAB_002c6275;\n    goto LAB_002c638e;\n  case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/mips.cc",0x2e62,"relocate");\n  case 4:\n  case 100:\n  case 0x85:\n    bVar61 = false;\n    bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n    uVar49 = *(uint *)view;\n    uVar26 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    goto LAB_002c7644;\n  case 5:\n  case 0x68:\n  case 0x86:\n    goto switchD_002c4f87_caseD_5;\n  case 6:\n  case 0x69:\n  case 0x87:\n  case 0x9d:\n    bVar61 = false;\n    in_stack_fffffffffffffed0 = *(uint *)view;\n    in_stack_fffffffffffffee0 =\n         (_List_node_base *)\n         (ulong)(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8);\nLAB_002c7171:\n    if (rel_type == 9) {\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n      }\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);\n      }\n    }\n    if (local_f8._0_1_ == false) {\n      object = (_List_node_base **)this_00;\n      uVar23 = gold::Symbol_value<32" (assignment_expression "pMVar51 = target->got_;\n    if (pMVar51 != (Mips_output_data_got<32,_true> *)0x0) goto LAB_002c6275;\n    goto LAB_002c638e;\n  case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/mips.cc",0x2e62,"relocate");\n  case 4:\n  case 100:\n  case 0x85:\n    bVar61 = false;\n    bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n    uVar49 = *(uint *)view;\n    uVar26 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    goto LAB_002c7644;\n  case 5:\n  case 0x68:\n  case 0x86:\n    goto switchD_002c4f87_caseD_5;\n  case 6:\n  case 0x69:\n  case 0x87:\n  case 0x9d:\n    bVar61 = false;\n    in_stack_fffffffffffffed0 = *(uint *)view;\n    in_stack_fffffffffffffee0 =\n         (_List_node_base *)\n         (ulong)(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8);\nLAB_002c7171:\n    if (rel_type == 9) {\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n      }\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);\n      }\n    }\n    if (local_f8._0_1_ == false) {\n      object = (_List_node_base **)this_00" (call_expression "pMVar51 = target->got_;\n    if (pMVar51 != (Mips_output_data_got<32,_true> *)0x0) goto LAB_002c6275;\n    goto LAB_002c638e;\n  case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/mips.cc",0x2e62,"relocate");\n  case 4:\n  case 100:\n  case 0x85:\n    bVar61 = false;\n    bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n    uVar49 = *(uint *)view;\n    uVar26 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    goto LAB_002c7644;\n  case 5:\n  case 0x68:\n  case 0x86:\n    goto switchD_002c4f87_caseD_5;\n  case 6:\n  case 0x69:\n  case 0x87:\n  case 0x9d:\n    bVar61 = false;\n    in_stack_fffffffffffffed0 = *(uint *)view;\n    in_stack_fffffffffffffee0 =\n         (_List_node_base *)\n         (ulong)(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8);\nLAB_002c7171:\n    if (rel_type == 9) {\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n      }\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);\n      }\n    }\n    if (local_f8._0_1_ == false)" (assignment_expression "pMVar51 = target->got_" identifier = (field_expression "target->got_" identifier -> field_identifier)) (ERROR ";\n    if" ; if) (argument_list "(pMVar51 != (Mips_output_data_got<32,_true> *)0x0) goto LAB_002c6275;\n    goto LAB_002c638e;\n  case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/mips.cc",0x2e62,"relocate");\n  case 4:\n  case 100:\n  case 0x85:\n    bVar61 = false;\n    bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n    uVar49 = *(uint *)view;\n    uVar26 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    goto LAB_002c7644;\n  case 5:\n  case 0x68:\n  case 0x86:\n    goto switchD_002c4f87_caseD_5;\n  case 6:\n  case 0x69:\n  case 0x87:\n  case 0x9d:\n    bVar61 = false;\n    in_stack_fffffffffffffed0 = *(uint *)view;\n    in_stack_fffffffffffffee0 =\n         (_List_node_base *)\n         (ulong)(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8);\nLAB_002c7171:\n    if (rel_type == 9) {\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n      }\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);\n      }\n    }\n    if (local_f8._0_1_ == false)" ( (ERROR "pMVar51 != (Mips_output_data_got<32,_true> *)0x0) goto LAB_002c6275;\n    goto LAB_002c638e;\n  case 3:\nswitchD_002c4f87_caseD_3:\n                    /* WARNING: Subroutine does not return */\n    gold::do_gold_unreachable("../../gold/mips.cc",0x2e62,"relocate");\n  case 4:\n  case 100:\n  case 0x85:\n    bVar61 = false;\n    bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);\n    uVar49 = *(uint *)view;\n    uVar26 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    goto LAB_002c7644;\n  case 5:\n  case 0x68:\n  case 0x86:\n    goto switchD_002c4f87_caseD_5;\n  case 6:\n  case 0x69:\n  case 0x87:\n  case 0x9d:\n    bVar61 = false;\n    in_stack_fffffffffffffed0 = *(uint *)view;\n    in_stack_fffffffffffffee0 =\n         (_List_node_base *)\n         (ulong)(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8);\nLAB_002c7171:\n    if (rel_type == 9)" (binary_expression "pMVar51 != (Mips_output_data_got<32,_true> *)0x0) goto LAB_002c6275;\n    goto LAB_002c638e;\n  case 3:\nswitchD_002c4f87_caseD_3" identifier != (ERROR "(Mips_output_data_got<32,_true> *)0x0) goto LAB_002c6275;\n    goto LAB_002c638e;\n  case 3:" (parenthesized_expression "(Mips_output_data_got<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_got<32,_true> *)0x0" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) identifier identifier ; goto identifier ; case number_literal :) identifier) : comment identifier : : (call_expression "do_gold_unreachable("../../gold/mips.cc",0x2e62,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2e62,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ; case number_literal : case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; (assignment_expression "bVar64 = (bool)((!bVar62 || !bVar63) & local_e3)" identifier = (cast_expression "(bool)((!bVar62 || !bVar63) & local_e3)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "((!bVar62 || !bVar63) & local_e3)" ( (binary_expression "(!bVar62 || !bVar63) & local_e3" (parenthesized_expression "(!bVar62 || !bVar63)" ( (binary_expression "!bVar62 || !bVar63" (unary_expression "!bVar62" ! identifier) || (unary_expression "!bVar63" ! identifier)) )) & identifier) )))) ; (assignment_expression "uVar49 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar26 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" identifier = (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8" (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8" (binary_expression "uVar49 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar49 & 0xff0000) >> 8" (parenthesized_expression "(uVar49 & 0xff0000)" ( (binary_expression "uVar49 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar49 << 0x18" identifier << number_literal))) ; goto identifier ; case number_literal : case number_literal : case number_literal : goto identifier ; case number_literal : case number_literal : case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; (assignment_expression "in_stack_fffffffffffffed0 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "in_stack_fffffffffffffee0 =\n         (_List_node_base *)\n         (ulong)(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8)" identifier = (cast_expression "(_List_node_base *)\n         (ulong)(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(ulong)(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8)" ( (binary_expression "in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8" (binary_expression "in_stack_fffffffffffffed0 >> 0x18" identifier >> number_literal) | (binary_expression "(in_stack_fffffffffffffed0 & 0xff0000) >> 8" (parenthesized_expression "(in_stack_fffffffffffffed0 & 0xff0000)" ( (binary_expression "in_stack_fffffffffffffed0 & 0xff0000" identifier & number_literal) )) >> number_literal)) ))))) ; (call_expression "LAB_002c7171:\n    if (rel_type == 9)" identifier (ERROR ":\n    if" : if) (argument_list "(rel_type == 9)" ( (binary_expression "rel_type == 9" identifier == number_literal) )))) (compound_statement "{\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n      }\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);\n      }\n    }" { (expression_statement "local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;" (comma_expression "local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs" (binary_expression "local_108 = (anonymous_namespace)::Mips_relocate_functions<32" (assignment_expression "local_108 = (anonymous_namespace)" identifier = (parenthesized_expression "(anonymous_namespace)" ( identifier ))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (binary_expression "true>::hi16_relocs" true > (ERROR "::" : :) identifier)) ;) (if_statement "if ((anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n      }" if (parenthesized_expression "((anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)" ( (ERROR "(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::" (parenthesized_expression "(anonymous_namespace)" ( identifier )) : : (comma_expression "Mips_relocate_functions<32,true>::hi16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)" (binary_expression "Mips_relocate_functions<32" identifier < number_literal) , (binary_expression "true>::hi16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)" (binary_expression "true>::hi16_relocs" true > (ERROR "::" : :) identifier) != (cast_expression "(_List_node_base *)&(anonymous_namespace)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))))) : :) (comma_expression "Mips_relocate_functions<32,true>::hi16_relocs" (binary_expression "Mips_relocate_functions<32" identifier < number_literal) , (binary_expression "true>::hi16_relocs" true > (ERROR "::" : :) identifier)) )) (compound_statement "{\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n      }" { (do_statement "do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);" do (compound_statement "{\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }\n        }" { (if_statement "if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }" if (parenthesized_expression "(_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next)" ( (binary_expression "_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next" identifier == (pointer_expression "*(_Rb_tree_color *)&local_108[3]._M_next" * (cast_expression "(_Rb_tree_color *)&local_108[3]._M_next" ( (type_descriptor "_Rb_tree_color *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_108[3]._M_next" & (field_expression "local_108[3]._M_next" (subscript_expression "local_108[3]" identifier [ number_literal ]) . field_identifier))))) )) (compound_statement "{\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7bc0;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            address_00 = *(Mips_address *)&local_108[3]._M_prev;\n            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));\n            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db50 = _DAT_0067db50 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }" { (expression_statement "uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);" (assignment_expression "uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4)" identifier = (pointer_expression "*(uint *)((long)&local_108[2]._M_prev + 4)" * (cast_expression "(uint *)((long)&local_108[2]._M_prev + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&local_108[2]._M_prev + 4)" ( (binary_expression "(long)&local_108[2]._M_prev + 4" (cast_expression "(long)&local_108[2]._M_prev" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&local_108[2]._M_prev" & (field_expression "local_108[2]._M_prev" (subscript_expression "local_108[2]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))))) ;) (expression_statement "in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;" (assignment_expression "in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)" identifier = (cast_expression "(_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)" identifier (argument_list "((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)" ( (cast_expression "(int)((ulong)in_stack_fffffffffffffee8 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulong)in_stack_fffffffffffffee8 >> 0x20)" ( (binary_expression "(ulong)in_stack_fffffffffffffee8 >> 0x20" (cast_expression "(ulong)in_stack_fffffffffffffee8" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) ))) , identifier ))))) ;) (expression_statement "bVar62 = is_matching_lo16_reloc(uVar49,uVar21);" (assignment_expression "bVar62 = is_matching_lo16_reloc(uVar49,uVar21)" identifier = (call_expression "is_matching_lo16_reloc(uVar49,uVar21)" identifier (argument_list "(uVar49,uVar21)" ( identifier , identifier )))) ;) (if_statement "if (!bVar62) goto LAB_002c7bc0;" if (parenthesized_expression "(!bVar62)" ( (unary_expression "!bVar62" ! identifier) )) (goto_statement "goto LAB_002c7bc0;" goto statement_identifier ;)) (expression_statement "in_stack_fffffffffffffed8 = local_108[1]._M_next;" (assignment_expression "in_stack_fffffffffffffed8 = local_108[1]._M_next" identifier = (field_expression "local_108[1]._M_next" (subscript_expression "local_108[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;" (assignment_expression "in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next" identifier = (cast_expression "(Symbol *)local_108[2]._M_next" ( (type_descriptor "Symbol *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "local_108[2]._M_next" (subscript_expression "local_108[2]" identifier [ number_literal ]) . field_identifier))) ;) (expression_statement "MVar5 = *(Mips_address *)&local_108[2]._M_prev;" (assignment_expression "MVar5 = *(Mips_address *)&local_108[2]._M_prev" identifier = (pointer_expression "*(Mips_address *)&local_108[2]._M_prev" * (cast_expression "(Mips_address *)&local_108[2]._M_prev" ( (type_descriptor "Mips_address *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_108[2]._M_prev" & (field_expression "local_108[2]._M_prev" (subscript_expression "local_108[2]" identifier [ number_literal ]) . field_identifier))))) ;) (expression_statement "pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;" (assignment_expression "pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev" identifier = (parenthesized_expression "(Mips_relobj<32,_true> *)local_108[1]._M_prev" ( (comma_expression "Mips_relobj<32,_true> *)local_108[1]._M_prev" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)local_108[1]._M_prev" identifier > (pointer_expression "*)local_108[1]._M_prev" * (ERROR ")" )) (field_expression "local_108[1]._M_prev" (subscript_expression "local_108[1]" identifier [ number_literal ]) . field_identifier)))) ))) ;) (expression_statement "uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);" (assignment_expression "uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4)" identifier = (pointer_expression "*(undefined1 *)((long)&local_108[3]._M_next + 4)" * (cast_expression "(undefined1 *)((long)&local_108[3]._M_next + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&local_108[3]._M_next + 4)" ( (binary_expression "(long)&local_108[3]._M_next + 4" (cast_expression "(long)&local_108[3]._M_next" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&local_108[3]._M_next" & (field_expression "local_108[3]._M_next" (subscript_expression "local_108[3]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))))) ;) (expression_statement "address_00 = *(Mips_address *)&local_108[3]._M_prev;" (assignment_expression "address_00 = *(Mips_address *)&local_108[3]._M_prev" identifier = (pointer_expression "*(Mips_address *)&local_108[3]._M_prev" * (cast_expression "(Mips_address *)&local_108[3]._M_prev" ( (type_descriptor "Mips_address *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_108[3]._M_prev" & (field_expression "local_108[3]._M_prev" (subscript_expression "local_108[3]" identifier [ number_literal ]) . field_identifier))))) ;) (expression_statement "sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);" (assignment_expression "sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4)" identifier = (cast_expression "(size_t)*(byte *)((long)&local_108[3]._M_prev + 4)" ( (type_descriptor "size_t" primitive_type) ) (pointer_expression "*(byte *)((long)&local_108[3]._M_prev + 4)" * (cast_expression "(byte *)((long)&local_108[3]._M_prev + 4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&local_108[3]._M_prev + 4)" ( (binary_expression "(long)&local_108[3]._M_prev + 4" (cast_expression "(long)&local_108[3]._M_prev" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&local_108[3]._M_prev" & (field_expression "local_108[3]._M_prev" (subscript_expression "local_108[3]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))))) ;) (expression_statement "Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0));" (comma_expression "Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0))" (binary_expression "Mips_relocate_functions<32" identifier < number_literal) , (binary_expression "_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0))" identifier > (ERROR "::" : :) (call_expression "mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0))" identifier (argument_list "((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       SUB81(in_stack_fffffffffffffec0,0))" ( (cast_expression "(uchar *)in_stack_fffffffffffffed8" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uint)in_stack_fffffffffffffee8" ( (type_descriptor "uint" type_identifier) ) identifier) , (call_expression "SUB81(in_stack_fffffffffffffec0,0)" identifier (argument_list "(in_stack_fffffffffffffec0,0)" ( identifier , number_literal ))) ))))) ;) (expression_statement "SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);" (comma_expression "SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_)" (assignment_expression "SVar27 = Mips_relocate_functions<32" identifier = (binary_expression "Mips_relocate_functions<32" identifier < number_literal)) , (binary_expression "_true>::do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_)" identifier > (ERROR "::" : :) (call_expression "do_relhi16\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_)" identifier (argument_list "((uchar *)in_stack_fffffffffffffed8,pMVar45,\n                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_)" ( (cast_expression "(uchar *)in_stack_fffffffffffffed8" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , (parenthesized_expression "(Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_)" ( (comma_expression "Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_" (binary_expression "Symbol_value<32> *)in_stack_fffffffffffffec0" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)in_stack_fffffffffffffec0" * (ERROR ")" )) identifier)) , (comma_expression "MVar5,address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_" identifier , (comma_expression "address_00,\n                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_" identifier , (comma_expression "SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_" (call_expression "SUB81(sVar56,0)" identifier (argument_list "(sVar56,0)" ( identifier , number_literal ))) , (comma_expression "(uint)in_stack_fffffffffffffee8,(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_" (cast_expression "(uint)in_stack_fffffffffffffee8" ( (type_descriptor "uint" type_identifier) ) identifier) , (comma_expression "(bool)uVar57,\n                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_" (cast_expression "(bool)uVar57" ( (type_descriptor "bool" primitive_type) ) identifier) , (comma_expression "(uint)local_c0,target,(bool)cVar47,&this->calculated_value_" (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier) , (comma_expression "target,(bool)cVar47,&this->calculated_value_" identifier , (comma_expression "(bool)cVar47,&this->calculated_value_" (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) , (pointer_expression "&this->calculated_value_" & (field_expression "this->calculated_value_" identifier -> field_identifier))))))))))) )) ))))) ;) (expression_statement "object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);" (assignment_expression "object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff)" identifier = (cast_expression "(_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff)" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((ulong)in_stack_fffffffffffffee8 & 0xffffffff)" ( (binary_expression "(ulong)in_stack_fffffffffffffee8 & 0xffffffff" (cast_expression "(ulong)in_stack_fffffffffffffee8" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);" (comma_expression "Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false)" (binary_expression "Mips_relocate_functions<32" identifier < number_literal) , (binary_expression "_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false)" identifier > (ERROR "::" : :) (call_expression "mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false)" identifier (argument_list "((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false)" ( (cast_expression "(uchar *)in_stack_fffffffffffffed8" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uint)in_stack_fffffffffffffee8" ( (type_descriptor "uint" type_identifier) ) identifier) , false ))))) ;) (if_statement "if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;" if (parenthesized_expression "(SVar27 == STATUS_OVERFLOW)" ( (binary_expression "SVar27 == STATUS_OVERFLOW" identifier == identifier) )) (goto_statement "goto LAB_002c5940;" goto statement_identifier ;)) (expression_statement "p_Var31 = local_108->_M_next;" (assignment_expression "p_Var31 = local_108->_M_next" identifier = (field_expression "local_108->_M_next" identifier -> field_identifier)) ;) (expression_statement "_DAT_0067db50 = _DAT_0067db50 + -1;" (assignment_expression "_DAT_0067db50 = _DAT_0067db50 + -1" identifier = (binary_expression "_DAT_0067db50 + -1" identifier + number_literal)) ;) (labeled_statement "std::__detail::_List_node_base::_M_unhook(local_108);" statement_identifier : (ERROR ":" :) (labeled_statement "__detail::_List_node_base::_M_unhook(local_108);" statement_identifier : (ERROR ":" :) (labeled_statement "_List_node_base::_M_unhook(local_108);" statement_identifier : (ERROR ":" :) (expression_statement "_M_unhook(local_108);" (call_expression "_M_unhook(local_108)" identifier (argument_list "(local_108)" ( identifier ))) ;)))) (expression_statement "operator_delete(local_108);" (call_expression "operator_delete(local_108)" identifier (argument_list "(local_108)" ( identifier ))) ;) (expression_statement "local_108 = p_Var31;" (assignment_expression "local_108 = p_Var31" identifier = identifier) ;) }) (else_clause "else {\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }" else (compound_statement "{\nLAB_002c7bc0:\n            local_108 = local_108->_M_next;\n          }" { (labeled_statement "LAB_002c7bc0:\n            local_108 = local_108->_M_next;" statement_identifier : (expression_statement "local_108 = local_108->_M_next;" (assignment_expression "local_108 = local_108->_M_next" identifier = (field_expression "local_108->_M_next" identifier -> field_identifier)) ;)) }))) }) while (parenthesized_expression "(local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)" ( (comma_expression "local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs" (binary_expression "local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32" (binary_expression "local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)" identifier != (cast_expression "(_List_node_base *)\n                 &(anonymous_namespace)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier ))))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (binary_expression "true>::hi16_relocs" true > (ERROR "::" : :) identifier)) )) ;) })) (expression_statement "object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;" (comma_expression "object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs" (binary_expression "object = &(anonymous_namespace)::Mips_relocate_functions<32" (assignment_expression "object = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (binary_expression "true>::hi16_relocs" true > (ERROR "::" : :) identifier)) ;) (expression_statement "local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;" (comma_expression "local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs" (binary_expression "local_108 = (anonymous_namespace)::Mips_relocate_functions<32" (assignment_expression "local_108 = (anonymous_namespace)" identifier = (parenthesized_expression "(anonymous_namespace)" ( identifier ))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (binary_expression "true>::got16_relocs" true > (ERROR "::" : :) identifier)) ;) (if_statement "if ((anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)\n      {\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);\n      }" if (parenthesized_expression "((anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)" ( (ERROR "(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)::" (parenthesized_expression "(anonymous_namespace)" ( identifier )) : : (comma_expression "Mips_relocate_functions<32,true>::got16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)" (binary_expression "Mips_relocate_functions<32" identifier < number_literal) , (binary_expression "true>::got16_relocs !=\n          (_List_node_base *)&(anonymous_namespace)" (binary_expression "true>::got16_relocs" true > (ERROR "::" : :) identifier) != (cast_expression "(_List_node_base *)&(anonymous_namespace)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))))) : :) (comma_expression "Mips_relocate_functions<32,true>::got16_relocs" (binary_expression "Mips_relocate_functions<32" identifier < number_literal) , (binary_expression "true>::got16_relocs" true > (ERROR "::" : :) identifier)) )) (compound_statement "{\n        do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);\n      }" { (do_statement "do {\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n        } while (local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);" do (compound_statement "{\n          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;\n        }" { (if_statement "if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }\n          else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }" if (parenthesized_expression "(_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next)" ( (binary_expression "_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next" identifier == (pointer_expression "*(_Rb_tree_color *)&local_108[3]._M_next" * (cast_expression "(_Rb_tree_color *)&local_108[3]._M_next" ( (type_descriptor "_Rb_tree_color *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_108[3]._M_next" & (field_expression "local_108[3]._M_next" (subscript_expression "local_108[3]" identifier [ number_literal ]) . field_identifier))))) )) (compound_statement "{\n            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);\n            in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;\n            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);\n            if (!bVar62) goto LAB_002c7d70;\n            in_stack_fffffffffffffed8 = local_108[1]._M_next;\n            MVar5 = *(Mips_address *)&local_108[2]._M_prev;\n            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;\n            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;\n            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);\n            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);\n            sVar56 = local_c0;\n            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);\n            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);\n            Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);\n            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;\n            p_Var31 = local_108->_M_next;\n            _DAT_0067db30 = _DAT_0067db30 + -1;\n            std::__detail::_List_node_base::_M_unhook(local_108);\n            operator_delete(local_108);\n            local_108 = p_Var31;\n          }" { (expression_statement "uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);" (assignment_expression "uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4)" identifier = (pointer_expression "*(uint *)((long)&local_108[2]._M_prev + 4)" * (cast_expression "(uint *)((long)&local_108[2]._M_prev + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&local_108[2]._M_prev + 4)" ( (binary_expression "(long)&local_108[2]._M_prev + 4" (cast_expression "(long)&local_108[2]._M_prev" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&local_108[2]._M_prev" & (field_expression "local_108[2]._M_prev" (subscript_expression "local_108[2]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))))) ;) (expression_statement "in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)\n            ;" (assignment_expression "in_stack_fffffffffffffee8 =\n                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)" identifier = (cast_expression "(_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)" identifier (argument_list "((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)" ( (cast_expression "(int)((ulong)in_stack_fffffffffffffee8 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulong)in_stack_fffffffffffffee8 >> 0x20)" ( (binary_expression "(ulong)in_stack_fffffffffffffee8 >> 0x20" (cast_expression "(ulong)in_stack_fffffffffffffee8" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) ))) , identifier ))))) ;) (expression_statement "bVar62 = is_matching_lo16_reloc(uVar49,uVar21);" (assignment_expression "bVar62 = is_matching_lo16_reloc(uVar49,uVar21)" identifier = (call_expression "is_matching_lo16_reloc(uVar49,uVar21)" identifier (argument_list "(uVar49,uVar21)" ( identifier , identifier )))) ;) (if_statement "if (!bVar62) goto LAB_002c7d70;" if (parenthesized_expression "(!bVar62)" ( (unary_expression "!bVar62" ! identifier) )) (goto_statement "goto LAB_002c7d70;" goto statement_identifier ;)) (expression_statement "in_stack_fffffffffffffed8 = local_108[1]._M_next;" (assignment_expression "in_stack_fffffffffffffed8 = local_108[1]._M_next" identifier = (field_expression "local_108[1]._M_next" (subscript_expression "local_108[1]" identifier [ number_literal ]) . field_identifier)) ;) (expression_statement "MVar5 = *(Mips_address *)&local_108[2]._M_prev;" (assignment_expression "MVar5 = *(Mips_address *)&local_108[2]._M_prev" identifier = (pointer_expression "*(Mips_address *)&local_108[2]._M_prev" * (cast_expression "(Mips_address *)&local_108[2]._M_prev" ( (type_descriptor "Mips_address *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_108[2]._M_prev" & (field_expression "local_108[2]._M_prev" (subscript_expression "local_108[2]" identifier [ number_literal ]) . field_identifier))))) ;) (expression_statement "pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;" (assignment_expression "pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev" identifier = (parenthesized_expression "(Mips_relobj<32,_true> *)local_108[1]._M_prev" ( (comma_expression "Mips_relobj<32,_true> *)local_108[1]._M_prev" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)local_108[1]._M_prev" identifier > (pointer_expression "*)local_108[1]._M_prev" * (ERROR ")" )) (field_expression "local_108[1]._M_prev" (subscript_expression "local_108[1]" identifier [ number_literal ]) . field_identifier)))) ))) ;) (expression_statement "pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;" (assignment_expression "pSVar44 = (Symbol_value<32> *)local_108[2]._M_next" identifier = (parenthesized_expression "(Symbol_value<32> *)local_108[2]._M_next" ( (binary_expression "Symbol_value<32> *)local_108[2]._M_next" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)local_108[2]._M_next" * (ERROR ")" )) (field_expression "local_108[2]._M_next" (subscript_expression "local_108[2]" identifier [ number_literal ]) . field_identifier))) ))) ;) (expression_statement "uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);" (assignment_expression "uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4)" identifier = (pointer_expression "*(undefined1 *)((long)&local_108[3]._M_next + 4)" * (cast_expression "(undefined1 *)((long)&local_108[3]._M_next + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&local_108[3]._M_next + 4)" ( (binary_expression "(long)&local_108[3]._M_next + 4" (cast_expression "(long)&local_108[3]._M_next" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&local_108[3]._M_next" & (field_expression "local_108[3]._M_next" (subscript_expression "local_108[3]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))))) ;) (expression_statement "Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle);" (comma_expression "Mips_relocate_functions<32,_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle)" (binary_expression "Mips_relocate_functions<32" identifier < number_literal) , (binary_expression "_true>::mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle)" identifier > (ERROR "::" : :) (call_expression "mips_reloc_unshuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle)" identifier (argument_list "((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,\n                       jal_shuffle)" ( (cast_expression "(uchar *)in_stack_fffffffffffffed8" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uint)in_stack_fffffffffffffee8" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier ))))) ;) (expression_statement "sVar56 = local_c0;" (assignment_expression "sVar56 = local_c0" identifier = identifier) ;) (expression_statement "SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_);" (comma_expression "SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_)" (assignment_expression "SVar27 = Mips_relocate_functions<32" identifier = (binary_expression "Mips_relocate_functions<32" identifier < number_literal)) , (binary_expression "_true>::do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_)" identifier > (ERROR "::" : :) (call_expression "do_relgot16_local\n                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_)" identifier (argument_list "((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,\n                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,\n                                &this->calculated_value_)" ( (cast_expression "(uchar *)in_stack_fffffffffffffed8" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , identifier , identifier , (cast_expression "(bool)uVar57" ( (type_descriptor "bool" primitive_type) ) identifier) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier , (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) , (pointer_expression "&this->calculated_value_" & (field_expression "this->calculated_value_" identifier -> field_identifier)) ))))) ;) (expression_statement "object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);" (assignment_expression "object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff)" identifier = (cast_expression "(_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff)" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((ulong)in_stack_fffffffffffffee8 & 0xffffffff)" ( (binary_expression "(ulong)in_stack_fffffffffffffee8 & 0xffffffff" (cast_expression "(ulong)in_stack_fffffffffffffee8" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);" (comma_expression "Mips_relocate_functions<32,_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false)" (binary_expression "Mips_relocate_functions<32" identifier < number_literal) , (binary_expression "_true>::mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false)" identifier > (ERROR "::" : :) (call_expression "mips_reloc_shuffle\n                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false)" identifier (argument_list "((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false)" ( (cast_expression "(uchar *)in_stack_fffffffffffffed8" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uint)in_stack_fffffffffffffee8" ( (type_descriptor "uint" type_identifier) ) identifier) , false ))))) ;) (if_statement "if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;" if (parenthesized_expression "(SVar27 == STATUS_OVERFLOW)" ( (binary_expression "SVar27 == STATUS_OVERFLOW" identifier == identifier) )) (goto_statement "goto LAB_002c5940;" goto statement_identifier ;)) (expression_statement "p_Var31 = local_108->_M_next;" (assignment_expression "p_Var31 = local_108->_M_next" identifier = (field_expression "local_108->_M_next" identifier -> field_identifier)) ;) (expression_statement "_DAT_0067db30 = _DAT_0067db30 + -1;" (assignment_expression "_DAT_0067db30 = _DAT_0067db30 + -1" identifier = (binary_expression "_DAT_0067db30 + -1" identifier + number_literal)) ;) (labeled_statement "std::__detail::_List_node_base::_M_unhook(local_108);" statement_identifier : (ERROR ":" :) (labeled_statement "__detail::_List_node_base::_M_unhook(local_108);" statement_identifier : (ERROR ":" :) (labeled_statement "_List_node_base::_M_unhook(local_108);" statement_identifier : (ERROR ":" :) (expression_statement "_M_unhook(local_108);" (call_expression "_M_unhook(local_108)" identifier (argument_list "(local_108)" ( identifier ))) ;)))) (expression_statement "operator_delete(local_108);" (call_expression "operator_delete(local_108)" identifier (argument_list "(local_108)" ( identifier ))) ;) (expression_statement "local_108 = p_Var31;" (assignment_expression "local_108 = p_Var31" identifier = identifier) ;) }) (else_clause "else {\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }" else (compound_statement "{\nLAB_002c7d70:\n            local_108 = local_108->_M_next;\n          }" { (labeled_statement "LAB_002c7d70:\n            local_108 = local_108->_M_next;" statement_identifier : (expression_statement "local_108 = local_108->_M_next;" (assignment_expression "local_108 = local_108->_M_next" identifier = (field_expression "local_108->_M_next" identifier -> field_identifier)) ;)) }))) (expression_statement "object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;" (comma_expression "object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs" (binary_expression "object = &(anonymous_namespace)::Mips_relocate_functions<32" (assignment_expression "object = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (binary_expression "true>::got16_relocs" true > (ERROR "::" : :) identifier)) ;) }) while (parenthesized_expression "(local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)" ( (comma_expression "local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs" (binary_expression "local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32" (binary_expression "local_108 !=\n                 (_List_node_base *)\n                 &(anonymous_namespace)" identifier != (cast_expression "(_List_node_base *)\n                 &(anonymous_namespace)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier ))))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (binary_expression "true>::got16_relocs" true > (ERROR "::" : :) identifier)) )) ;) })) }) (ERROR "if (local_f8._0_1_ == false" if ( identifier . identifier == false) ))) (ERROR "{\n      object" { identifier) = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) (ERROR ";\n      uVar23 = gold::Symbol_value" ; identifier = identifier : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    }\n    else" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; } else) { (expression_statement "pSVar34 = target->gp_;" (assignment_expression "pSVar34 = target->gp_" identifier = (field_expression "target->gp_" identifier -> field_identifier)) ;) if (parenthesized_expression "(uVar21 == 0x69)" ( (binary_expression "uVar21 == 0x69" identifier == number_literal) )) { if (parenthesized_expression "(pSVar34 == (Sized_symbol<32> *)0x0)" ( (binary_expression "pSVar34 == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) )) (compound_statement "{\n          VVar39 = 0;\n        }" { (expression_statement "VVar39 = 0;" (assignment_expression "VVar39 = 0" identifier = number_literal) ;) }) else { (expression_statement "VVar39 = pSVar34->value_;" (assignment_expression "VVar39 = pSVar34->value_" identifier = (field_expression "pSVar34->value_" identifier -> field_identifier)) ;) (expression_statement "object = (_List_node_base **)target;" (assignment_expression "object = (_List_node_base **)target" identifier = (cast_expression "(_List_node_base **)target" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) if ( ( ( (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0))" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0)" (field_expression "target->got_" identifier -> field_identifier) != (parenthesized_expression "(Mips_output_data_got<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_got<32,_true> *)0x0" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) && (parenthesized_expression "(target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0))" ( (binary_expression "target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)" (field_expression "target->got_->primary_got_" (field_expression "target->got_" identifier -> field_identifier) -> field_identifier) != (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) ))) && ( (ERROR "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        iVar25 = VVar39 - (address & 0xfffffffc);\n      }\n      else if ((uVar21 == 0x87) || (uVar21 == 0x9d))" (parenthesized_expression "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0))" ( (comma_expression "Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)" (binary_expression "_true> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier))) != (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )))) )) (compound_statement "{\n            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }" { (expression_statement "VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;" (assignment_expression "VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" identifier = (binary_expression "VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" identifier + (parenthesized_expression "((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" ( (field_expression "(Mips_got_info<32,_true> *)this_00->got_info_)->offset_" (parenthesized_expression "(Mips_got_info<32,_true> *)this_00->got_info_)" ( (comma_expression "Mips_got_info<32,_true> *)this_00->got_info_" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier)))) )) -> field_identifier) )))) ;) }) } (call_expression "iVar25 = VVar39 - (address & 0xfffffffc);\n      }\n      else if ((uVar21 == 0x87) || (uVar21 == 0x9d))" (assignment_expression "iVar25 = VVar39 - (address & 0xfffffffc)" identifier = (binary_expression "VVar39 - (address & 0xfffffffc)" identifier - (parenthesized_expression "(address & 0xfffffffc)" ( (binary_expression "address & 0xfffffffc" identifier & number_literal) )))) (ERROR ";\n      }\n      else if" ; } else if) (argument_list "((uVar21 == 0x87) || (uVar21 == 0x9d))" ( (binary_expression "(uVar21 == 0x87) || (uVar21 == 0x9d)" (parenthesized_expression "(uVar21 == 0x87)" ( (binary_expression "uVar21 == 0x87" identifier == number_literal) )) || (parenthesized_expression "(uVar21 == 0x9d)" ( (binary_expression "uVar21 == 0x9d" identifier == number_literal) ))) )))) { if (parenthesized_expression "(pSVar34 == (Sized_symbol<32> *)0x0)" ( (binary_expression "pSVar34 == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) )) (compound_statement "{\n          VVar39 = 0;\n        }" { (expression_statement "VVar39 = 0;" (assignment_expression "VVar39 = 0" identifier = number_literal) ;) }) else { (expression_statement "VVar39 = pSVar34->value_;" (assignment_expression "VVar39 = pSVar34->value_" identifier = (field_expression "pSVar34->value_" identifier -> field_identifier)) ;) if ( ( ( (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0))" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0)" (field_expression "target->got_" identifier -> field_identifier) != (parenthesized_expression "(Mips_output_data_got<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_got<32,_true> *)0x0" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) && (parenthesized_expression "(target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0))" ( (binary_expression "target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)" (field_expression "target->got_->primary_got_" (field_expression "target->got_" identifier -> field_identifier) -> field_identifier) != (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) ))) && ( (ERROR "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        iVar25 = (VVar39 - address) + 3;\n      }\n      else" (parenthesized_expression "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0))" ( (comma_expression "Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)" (binary_expression "_true> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier))) != (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )))) )) (compound_statement "{\n            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }" { (expression_statement "VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;" (assignment_expression "VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" identifier = (binary_expression "VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" identifier + (parenthesized_expression "((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" ( (field_expression "(Mips_got_info<32,_true> *)this_00->got_info_)->offset_" (parenthesized_expression "(Mips_got_info<32,_true> *)this_00->got_info_)" ( (comma_expression "Mips_got_info<32,_true> *)this_00->got_info_" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier)))) )) -> field_identifier) )))) ;) }) } (assignment_expression "iVar25 = (VVar39 - address) + 3" identifier = (binary_expression "(VVar39 - address) + 3" (parenthesized_expression "(VVar39 - address)" ( (binary_expression "VVar39 - address" identifier - identifier) )) + number_literal)) ; } else) { if (parenthesized_expression "(pSVar34 == (Sized_symbol<32> *)0x0)" ( (binary_expression "pSVar34 == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) )) (compound_statement "{\n          VVar39 = 0;\n        }" { (expression_statement "VVar39 = 0;" (assignment_expression "VVar39 = 0" identifier = number_literal) ;) }) else { (expression_statement "VVar39 = pSVar34->value_;" (assignment_expression "VVar39 = pSVar34->value_" identifier = (field_expression "pSVar34->value_" identifier -> field_identifier)) ;) (expression_statement "object = (_List_node_base **)target;" (assignment_expression "object = (_List_node_base **)target" identifier = (cast_expression "(_List_node_base **)target" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) if ( ( ( (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0))" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0)" (field_expression "target->got_" identifier -> field_identifier) != (parenthesized_expression "(Mips_output_data_got<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_got<32,_true> *)0x0" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) && (parenthesized_expression "(target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0))" ( (binary_expression "target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)" (field_expression "target->got_->primary_got_" (field_expression "target->got_" identifier -> field_identifier) -> field_identifier) != (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) ))) && ( (ERROR "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }\n        }\n        iVar25 = (VVar39 - address) + 4;\n      }\n      uVar23 = iVar25 + (uint)local_c0;\n    }\n    if ((bool)cVar47) goto LAB_002c59a8;\n    uVar23 = uVar23 ^ (uint)in_stack_fffffffffffffee0;\n    SVar27 = STATUS_OKAY;\n    *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ in_stack_fffffffffffffed0;\n    break;\n  case 7:\n  case 8:\n  case 0x65:\n  case 0x88:\n  case 0x89:\n  case 0xac:" (parenthesized_expression "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0))" ( (comma_expression "Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)" (binary_expression "_true> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier))) != (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )))) )) (compound_statement "{\n            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n          }" { (expression_statement "VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;" (assignment_expression "VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" identifier = (binary_expression "VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" identifier + (parenthesized_expression "((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" ( (field_expression "(Mips_got_info<32,_true> *)this_00->got_info_)->offset_" (parenthesized_expression "(Mips_got_info<32,_true> *)this_00->got_info_)" ( (comma_expression "Mips_got_info<32,_true> *)this_00->got_info_" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier)))) )) -> field_identifier) )))) ;) }) } (assignment_expression "iVar25 = (VVar39 - address) + 4" identifier = (binary_expression "(VVar39 - address) + 4" (parenthesized_expression "(VVar39 - address)" ( (binary_expression "VVar39 - address" identifier - identifier) )) + number_literal)) ; } (call_expression "uVar23 = iVar25 + (uint)local_c0;\n    }\n    if ((bool)cVar47)" (assignment_expression "uVar23 = iVar25 + (uint)local_c0" identifier = (binary_expression "iVar25 + (uint)local_c0" identifier + (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) (ERROR ";\n    }\n    if" ; } if) (argument_list "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) ))) identifier identifier ; (assignment_expression "uVar23 = uVar23 ^ (uint)in_stack_fffffffffffffee0" identifier = (binary_expression "uVar23 ^ (uint)in_stack_fffffffffffffee0" identifier ^ (cast_expression "(uint)in_stack_fffffffffffffee0" ( (type_descriptor "uint" type_identifier) ) identifier))) ; (binary_expression "SVar27 = STATUS_OKAY;\n    *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ in_stack_fffffffffffffed0" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) (ERROR ";" ;) * (cast_expression "(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ in_stack_fffffffffffffed0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ in_stack_fffffffffffffed0" identifier = (binary_expression "((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ in_stack_fffffffffffffed0" (parenthesized_expression "((uVar23 & 0xff00) << 8 | uVar23 << 0x18)" ( (binary_expression "(uVar23 & 0xff00) << 8 | uVar23 << 0x18" (binary_expression "(uVar23 & 0xff00) << 8" (parenthesized_expression "(uVar23 & 0xff00)" ( (binary_expression "uVar23 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar23 << 0x18" identifier << number_literal)) )) ^ identifier)))) ; break ; case number_literal : case number_literal : case number_literal : case number_literal : case number_literal : case number_literal :) (assignment_expression "pSVar34 = target->gp_" identifier = (field_expression "target->gp_" identifier -> field_identifier)) (ERROR ";\n    if" ; if) ( (ERROR "pSVar34 != (Sized_symbol<32> *)0x0)" (binary_expression "pSVar34 != (Sized_symbol<32> *)0x0)" identifier != (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) )))) { (expression_statement "bVar61 = false;" (assignment_expression "bVar61 = false" identifier = false) ;) (labeled_statement "LAB_002c7253:\n      local_c0._0_4_ = local_c8;" statement_identifier : (expression_statement "local_c0._0_4_ = local_c8;" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;)) (expression_statement "VVar39 = pSVar34->value_;" (assignment_expression "VVar39 = pSVar34->value_" identifier = (field_expression "pSVar34->value_" identifier -> field_identifier)) ;) if ( ( ( (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n          (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0))" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0)" (field_expression "target->got_" identifier -> field_identifier) != (parenthesized_expression "(Mips_output_data_got<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_got<32,_true> *)0x0" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) && (parenthesized_expression "(target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0))" ( (binary_expression "target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)" (field_expression "target->got_->primary_got_" (field_expression "target->got_" identifier -> field_identifier) -> field_identifier) != (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) ))) && ( (ERROR "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n        VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n      }\n      goto LAB_002c7297;\n    }\n    bVar61 = false;\n    VVar39 = 0;\n    uVar49 = *(uint *)view;\n    uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    local_c0._0_4_ = local_c8;\nLAB_002c72d4:\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (parenthesized_expression "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0))" ( (comma_expression "Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)" (binary_expression "_true> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier))) != (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )))) )) (compound_statement "{\n        VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n      }" { (expression_statement "VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;" (assignment_expression "VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" identifier = (binary_expression "VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" identifier + (parenthesized_expression "((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" ( (field_expression "(Mips_got_info<32,_true> *)this_00->got_info_)->offset_" (parenthesized_expression "(Mips_got_info<32,_true> *)this_00->got_info_)" ( (comma_expression "Mips_got_info<32,_true> *)this_00->got_info_" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier)))) )) -> field_identifier) )))) ;) }) goto identifier ; } (assignment_expression "bVar61 = false" identifier = false) ; (assignment_expression "VVar39 = 0" identifier = number_literal) ; (assignment_expression "uVar49 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" identifier = (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8" (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8" (binary_expression "uVar49 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar49 & 0xff0000) >> 8" (parenthesized_expression "(uVar49 & 0xff0000)" ( (binary_expression "uVar49 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar49 << 0x18" identifier << number_literal))) ; (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ; identifier : (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ;) (assignment_expression "uVar23 = VVar20 - VVar39" identifier = (binary_expression "VVar20 - VVar39" identifier - identifier)) (ERROR ";\n    if" ; if) ( (ERROR "gsym == (Sized_symbol<32> *)0x0) {\n      uVar23 = uVar23 + this_00->gp_;\n      object = (_List_node_base **)this_00;\n    }\n    uVar26 = (uVar23 ^ uVar49) & 0xffff;\n    if (uVar21 == 0xac) {\n      uVar26 = (uVar23 ^ uVar49) & 0x7f;\n    }\n    uVar26 = uVar49 ^ uVar26;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    *(uint *)view =\n         uVar49 >> 0x18 | (uVar26 & 0xff0000) >> 8 | (uVar26 & 0xff00) << 8 | uVar26 << 0x18;\n    if (0xffff < uVar23 + 0x8000) {\n      pcVar28 = (char *)gettext(\n                               "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                               );\n      gold::gold_error(pcVar28);\n      goto LAB_002c7359;\n    }\nLAB_002c5c87:\n    SVar27 = STATUS_OKAY;\n    break;\n  case 9:\n  case 0x66:\n  case 0x8a:\n    goto switchD_002c4f87_caseD_9;\n  case 10:\n    bVar61 = false;\nLAB_002c6a55:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 4;\n      uVar26 = uVar23 & 0x3fffc;\n      local_c0._0_4_ = uVar26 - 0x40000;\n      if ((uVar23 & 0x20000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (binary_expression "gsym == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) (compound_statement "{\n      uVar23 = uVar23 + this_00->gp_;\n      object = (_List_node_base **)this_00;\n    }" { (expression_statement "uVar23 = uVar23 + this_00->gp_;" (assignment_expression "uVar23 = uVar23 + this_00->gp_" identifier = (binary_expression "uVar23 + this_00->gp_" identifier + (field_expression "this_00->gp_" identifier -> field_identifier))) ;) (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) }) (call_expression "uVar26 = (uVar23 ^ uVar49) & 0xffff;\n    if (uVar21 == 0xac)" (assignment_expression "uVar26 = (uVar23 ^ uVar49) & 0xffff" identifier = (binary_expression "(uVar23 ^ uVar49) & 0xffff" (parenthesized_expression "(uVar23 ^ uVar49)" ( (binary_expression "uVar23 ^ uVar49" identifier ^ identifier) )) & number_literal)) (ERROR ";\n    if" ; if) (argument_list "(uVar21 == 0xac)" ( (binary_expression "uVar21 == 0xac" identifier == number_literal) ))) (compound_statement "{\n      uVar26 = (uVar23 ^ uVar49) & 0x7f;\n    }" { (expression_statement "uVar26 = (uVar23 ^ uVar49) & 0x7f;" (assignment_expression "uVar26 = (uVar23 ^ uVar49) & 0x7f" identifier = (binary_expression "(uVar23 ^ uVar49) & 0x7f" (parenthesized_expression "(uVar23 ^ uVar49)" ( (binary_expression "uVar23 ^ uVar49" identifier ^ identifier) )) & number_literal)) ;) }) (call_expression "uVar26 = uVar49 ^ uVar26;\n    if ((bool)cVar47)" (assignment_expression "uVar26 = uVar49 ^ uVar26" identifier = (binary_expression "uVar49 ^ uVar26" identifier ^ identifier)) (ERROR ";\n    if" ; if) (argument_list "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) ))) identifier (call_expression "LAB_002c59a8;\n    *(uint *)view =\n         uVar49 >> 0x18 | (uVar26 & 0xff0000) >> 8 | (uVar26 & 0xff00) << 8 | uVar26 << 0x18;\n    if (0xffff < uVar23 + 0x8000)" (binary_expression "LAB_002c59a8;\n    *(uint *)view =\n         uVar49 >> 0x18 | (uVar26 & 0xff0000) >> 8 | (uVar26 & 0xff00) << 8 | uVar26 << 0x18" identifier (ERROR ";" ;) * (cast_expression "(uint *)view =\n         uVar49 >> 0x18 | (uVar26 & 0xff0000) >> 8 | (uVar26 & 0xff00) << 8 | uVar26 << 0x18" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "view =\n         uVar49 >> 0x18 | (uVar26 & 0xff0000) >> 8 | (uVar26 & 0xff00) << 8 | uVar26 << 0x18" identifier = (binary_expression "uVar49 >> 0x18 | (uVar26 & 0xff0000) >> 8 | (uVar26 & 0xff00) << 8 | uVar26 << 0x18" (binary_expression "uVar49 >> 0x18 | (uVar26 & 0xff0000) >> 8 | (uVar26 & 0xff00) << 8" (binary_expression "uVar49 >> 0x18 | (uVar26 & 0xff0000) >> 8" (binary_expression "uVar49 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar26 & 0xff0000) >> 8" (parenthesized_expression "(uVar26 & 0xff0000)" ( (binary_expression "uVar26 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar26 & 0xff00) << 8" (parenthesized_expression "(uVar26 & 0xff00)" ( (binary_expression "uVar26 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar26 << 0x18" identifier << number_literal))))) (ERROR ";\n    if" ; if) (argument_list "(0xffff < uVar23 + 0x8000)" ( (binary_expression "0xffff < uVar23 + 0x8000" number_literal < (binary_expression "uVar23 + 0x8000" identifier + number_literal)) ))) (compound_statement "{\n      pcVar28 = (char *)gettext(\n                               "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                               );\n      gold::gold_error(pcVar28);\n      goto LAB_002c7359;\n    }" { (expression_statement "pcVar28 = (char *)gettext(\n                               "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                               );" (assignment_expression "pcVar28 = (char *)gettext(\n                               "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                               )" identifier = (cast_expression "(char *)gettext(\n                               "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                               )" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext(\n                               "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                               )" identifier (argument_list "(\n                               "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                               )" ( (string_literal ""small-data section exceeds 64KB; lower small-data size limit (see option -G)"" " string_content ") ))))) ;) (labeled_statement "gold::gold_error(pcVar28);" statement_identifier : (ERROR ":" :) (expression_statement "gold_error(pcVar28);" (call_expression "gold_error(pcVar28)" identifier (argument_list "(pcVar28)" ( identifier ))) ;)) (goto_statement "goto LAB_002c7359;" goto statement_identifier ;) }) identifier : (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ; break ; case number_literal : case number_literal : case number_literal : goto identifier ; case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal))) ; (call_expression "local_c0._0_4_ = local_c8;\n    if (bVar61 != false)" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) ))) (compound_statement "{\n      uVar23 = uVar49 * 4;\n      uVar26 = uVar23 & 0x3fffc;\n      local_c0._0_4_ = uVar26 - 0x40000;\n      if ((uVar23 & 0x20000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }" { (expression_statement "uVar23 = uVar49 * 4;" (assignment_expression "uVar23 = uVar49 * 4" identifier = (binary_expression "uVar49 * 4" identifier * number_literal)) ;) (expression_statement "uVar26 = uVar23 & 0x3fffc;" (assignment_expression "uVar26 = uVar23 & 0x3fffc" identifier = (binary_expression "uVar23 & 0x3fffc" identifier & number_literal)) ;) (expression_statement "local_c0._0_4_ = uVar26 - 0x40000;" (assignment_expression "local_c0._0_4_ = uVar26 - 0x40000" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar26 - 0x40000" identifier - number_literal)) ;) (if_statement "if ((uVar23 & 0x20000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }" if (parenthesized_expression "((uVar23 & 0x20000) == 0)" ( (binary_expression "(uVar23 & 0x20000) == 0" (parenthesized_expression "(uVar23 & 0x20000)" ( (binary_expression "uVar23 & 0x20000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        local_c0._0_4_ = uVar26;\n      }" { (expression_statement "local_c0._0_4_ = uVar26;" (assignment_expression "local_c0._0_4_ = uVar26" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) })) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address >> 2;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    uVar49 = uVar49 ^ uVar23;\n    *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;\n    object = (_List_node_base **)this_00;\n    VVar24 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (call_expression "uVar23 = VVar20 - address >> 2;\n    if ((bool)cVar47)" (assignment_expression "uVar23 = VVar20 - address >> 2" identifier = (binary_expression "VVar20 - address >> 2" (binary_expression "VVar20 - address" identifier - identifier) >> number_literal)) (ERROR ";\n    if" ; if) (argument_list "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) ))) identifier identifier ; (binary_expression "uVar49 = uVar49 ^ uVar23;\n    *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21" (assignment_expression "uVar49 = uVar49 ^ uVar23" identifier = (binary_expression "uVar49 ^ uVar23" identifier ^ identifier)) (ERROR ";" ;) * (cast_expression "(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21" identifier = (binary_expression "((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21" (parenthesized_expression "((uVar49 & 0xff00) << 8 | uVar49 << 0x18)" ( (binary_expression "(uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar49 << 0x18" identifier << number_literal)) )) ^ identifier)))) ; (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar24 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    SVar27 = STATUS_PCREL_UNALIGNED;\n    if ((VVar24 & 3) == 0) {\n      SVar27 = (Status)(0x3ffff < (VVar20 - address) + 0x20000);\n    }\n    break;\n  case 0xb:\n  case 0x67:\n  case 0x8e:\n    bVar61 = false;" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (call_expression "SVar27 = STATUS_PCREL_UNALIGNED;\n    if ((VVar24 & 3) == 0)" (assignment_expression "SVar27 = STATUS_PCREL_UNALIGNED" identifier = identifier) (ERROR ";\n    if" ; if) (argument_list "((VVar24 & 3) == 0)" ( (binary_expression "(VVar24 & 3) == 0" (parenthesized_expression "(VVar24 & 3)" ( (binary_expression "VVar24 & 3" identifier & number_literal) )) == number_literal) ))) (compound_statement "{\n      SVar27 = (Status)(0x3ffff < (VVar20 - address) + 0x20000);\n    }" { (expression_statement "SVar27 = (Status)(0x3ffff < (VVar20 - address) + 0x20000);" (assignment_expression "SVar27 = (Status)(0x3ffff < (VVar20 - address) + 0x20000)" identifier = (call_expression "(Status)(0x3ffff < (VVar20 - address) + 0x20000)" (parenthesized_expression "(Status)" ( identifier )) (argument_list "(0x3ffff < (VVar20 - address) + 0x20000)" ( (binary_expression "0x3ffff < (VVar20 - address) + 0x20000" number_literal < (binary_expression "(VVar20 - address) + 0x20000" (parenthesized_expression "(VVar20 - address)" ( (binary_expression "VVar20 - address" identifier - identifier) )) + number_literal)) )))) ;) }) break ; case number_literal : case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ;) identifier (ERROR ":\n    if" : if) ( (ERROR "gsym == (Sized_symbol<32> *)0x0) {\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x2f3d,"relocate");\n    }\n    if" (binary_expression "gsym == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) (compound_statement "{\nLAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x2f3d,"relocate");\n    }" { (labeled_statement "LAB_002c82dc:\n                    /* WARNING: Subroutine does not return */\n      gold::do_gold_unreachable("../../gold/mips.cc",0x2f3d,"relocate");" statement_identifier : comment (labeled_statement "gold::do_gold_unreachable("../../gold/mips.cc",0x2f3d,"relocate");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/mips.cc",0x2f3d,"relocate");" (call_expression "do_gold_unreachable("../../gold/mips.cc",0x2f3d,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2f3d,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;))) }) if) ( (ERROR "target->got_ == (Mips_output_data_got<32,_true> *)0x0) {\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n      goto LAB_002c82dc;\n    }" (binary_expression "target->got_ == (Mips_output_data_got<32,_true> *)0x0)" (field_expression "target->got_" identifier -> field_identifier) == (parenthesized_expression "(Mips_output_data_got<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_got<32,_true> *)0x0" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) (compound_statement "{\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n      goto LAB_002c82dc;\n    }" { (expression_statement "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);" (comma_expression "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)0x0)" identifier > (ERROR "::" : :) (call_expression "got_section((Target_mips<32,_true> *)0x0)" identifier (argument_list "((Target_mips<32,_true> *)0x0)" ( (parenthesized_expression "(Target_mips<32,_true> *)0x0)" ( (comma_expression "Target_mips<32,_true> *)0x0" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) ))))) ;) (goto_statement "goto LAB_002c82dc;" goto statement_identifier ;) })) (assignment_expression "local_e8 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , identifier > (ERROR "::" : :) identifier ( (field_expression "target->got_" identifier -> field_identifier) , (pointer_expression "&gsym->super_Symbol" & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) , number_literal , (ERROR "(Mips_relobj<32,_true> *)this_00);" (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) )) ;) identifier = ( (ERROR "Mips_relobj<32,_false> *)target->got_;\n    if" (comma_expression "Mips_relobj<32,_false> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ; if) ( (ERROR "pMVar53 != (Mips_relobj<32,_false> *)0x0) {\nLAB_002c6206:\n      object = (_List_node_base **)(ulong)local_e8;\n      uVar49 = Mips_output_data_got<32,_true>::gp_offset\n                         ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00);\n      if (this->calculate_only_ != false) goto LAB_002c67b0;\n      uVar23 = *(uint *)view;\n      uVar26 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;\n      *(uint *)view = ((uVar26 & 0xff00) << 8 | uVar26 << 0x18) ^ uVar23;\n      SVar27 = (Status)(0xffff < uVar49 + 0x8000);\n      goto LAB_002c624f;\n    }\n    goto LAB_002c81f0;\n  case 0xc:\n    bVar61 = false;\nswitchD_002c5379_caseD_c:\n    if" (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) (compound_statement "{\nLAB_002c6206:\n      object = (_List_node_base **)(ulong)local_e8;\n      uVar49 = Mips_output_data_got<32,_true>::gp_offset\n                         ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00);\n      if (this->calculate_only_ != false) goto LAB_002c67b0;\n      uVar23 = *(uint *)view;\n      uVar26 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;\n      *(uint *)view = ((uVar26 & 0xff00) << 8 | uVar26 << 0x18) ^ uVar23;\n      SVar27 = (Status)(0xffff < uVar49 + 0x8000);\n      goto LAB_002c624f;\n    }" { (labeled_statement "LAB_002c6206:\n      object = (_List_node_base **)(ulong)local_e8;" statement_identifier : (expression_statement "object = (_List_node_base **)(ulong)local_e8;" (assignment_expression "object = (_List_node_base **)(ulong)local_e8" identifier = (cast_expression "(_List_node_base **)(ulong)local_e8" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)local_e8" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;)) (expression_statement "uVar49 = Mips_output_data_got<32,_true>::gp_offset\n                         ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00);" (comma_expression "uVar49 = Mips_output_data_got<32,_true>::gp_offset" (assignment_expression "uVar49 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , (binary_expression "_true>::gp_offset" identifier > (ERROR "::" : :) identifier)) (ERROR "((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00)" ( ( (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00)" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "local_e8,\n                          (Mips_relobj<32,_true> *)this_00)" identifier , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) )))))) ;) (if_statement "if (this->calculate_only_ != false) goto LAB_002c67b0;" if (parenthesized_expression "(this->calculate_only_ != false)" ( (binary_expression "this->calculate_only_ != false" (field_expression "this->calculate_only_" identifier -> field_identifier) != false) )) (goto_statement "goto LAB_002c67b0;" goto statement_identifier ;)) (expression_statement "uVar23 = *(uint *)view;" (assignment_expression "uVar23 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar26 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;" (assignment_expression "uVar26 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49" identifier = (binary_expression "(uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49" (parenthesized_expression "(uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8)" ( (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8" (binary_expression "uVar23 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar23 & 0xff0000) >> 8" (parenthesized_expression "(uVar23 & 0xff0000)" ( (binary_expression "uVar23 & 0xff0000" identifier & number_literal) )) >> number_literal)) )) ^ identifier)) ;) (expression_statement "*(uint *)view = ((uVar26 & 0xff00) << 8 | uVar26 << 0x18) ^ uVar23;" (assignment_expression "*(uint *)view = ((uVar26 & 0xff00) << 8 | uVar26 << 0x18) ^ uVar23" (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar26 & 0xff00) << 8 | uVar26 << 0x18) ^ uVar23" (parenthesized_expression "((uVar26 & 0xff00) << 8 | uVar26 << 0x18)" ( (binary_expression "(uVar26 & 0xff00) << 8 | uVar26 << 0x18" (binary_expression "(uVar26 & 0xff00) << 8" (parenthesized_expression "(uVar26 & 0xff00)" ( (binary_expression "uVar26 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar26 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (expression_statement "SVar27 = (Status)(0xffff < uVar49 + 0x8000);" (assignment_expression "SVar27 = (Status)(0xffff < uVar49 + 0x8000)" identifier = (call_expression "(Status)(0xffff < uVar49 + 0x8000)" (parenthesized_expression "(Status)" ( identifier )) (argument_list "(0xffff < uVar49 + 0x8000)" ( (binary_expression "0xffff < uVar49 + 0x8000" number_literal < (binary_expression "uVar49 + 0x8000" identifier + number_literal)) )))) ;) (goto_statement "goto LAB_002c624f;" goto statement_identifier ;) }) goto identifier ; case number_literal : identifier = false ; identifier : if) ( (ERROR "target->gp_ == (Sized_symbol<32> *)0x0) {\n      VVar39 = 0;\n    }\n    else" (binary_expression "target->gp_ == (Sized_symbol<32> *)0x0)" (field_expression "target->gp_" identifier -> field_identifier) == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) (compound_statement "{\n      VVar39 = 0;\n    }" { (expression_statement "VVar39 = 0;" (assignment_expression "VVar39 = 0" identifier = number_literal) ;) }) else) { (expression_statement "VVar39 = target->gp_->value_;" (assignment_expression "VVar39 = target->gp_->value_" identifier = (field_expression "target->gp_->value_" (field_expression "target->gp_" identifier -> field_identifier) -> field_identifier)) ;) if ( ( ( (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&\n          (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0))" (binary_expression "target->got_ != (Mips_output_data_got<32,_true> *)0x0)" (field_expression "target->got_" identifier -> field_identifier) != (parenthesized_expression "(Mips_output_data_got<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_got<32,_true> *)0x0" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) && (parenthesized_expression "(target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0))" ( (binary_expression "target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)" (field_expression "target->got_->primary_got_" (field_expression "target->got_" identifier -> field_identifier) -> field_identifier) != (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) ))) && ( (ERROR "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {\n        VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n      }\n    }\n    uVar21 = *(uint *)view;\n    uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    if (bVar61 == false) {\n      uVar21 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (parenthesized_expression "(Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0))" ( (comma_expression "Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)" (binary_expression "_true> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier))) != (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )))) )) (compound_statement "{\n        VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;\n      }" { (expression_statement "VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;" (assignment_expression "VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" identifier = (binary_expression "VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" identifier + (parenthesized_expression "((Mips_got_info<32,_true> *)this_00->got_info_)->offset_" ( (field_expression "(Mips_got_info<32,_true> *)this_00->got_info_)->offset_" (parenthesized_expression "(Mips_got_info<32,_true> *)this_00->got_info_)" ( (comma_expression "Mips_got_info<32,_true> *)this_00->got_info_" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier)))) )) -> field_identifier) )))) ;) }) } (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (call_expression "uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    if (bVar61 == false)" (assignment_expression "uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar21 << 0x18" identifier << number_literal))) (ERROR ";\n    if" ; if) (argument_list "(bVar61 == false)" ( (binary_expression "bVar61 == false" identifier == false) ))) (compound_statement "{\n      uVar21 = local_c8;\n    }" { (expression_statement "uVar21 = local_c8;" (assignment_expression "uVar21 = local_c8" identifier = identifier) ;) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21);\n    uVar23 = (VVar20 + this_00->gp_) - VVar39;\n    if (!bVar62 || !bVar63) {\nLAB_002c5ccb:\n      uVar23 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;\n      pRVar50 = (Relocate *)view;\nLAB_002c5c85:\n      pRVar50->calculated_value_ = uVar23;\n      goto LAB_002c5c87;\n    }\n    goto LAB_002c59a8;\n  case 0x12:\n    bVar61 = false;\nswitchD_002c5379_caseD_12:\n    object = (_List_node_base **)0x12;" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,uVar21)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,uVar21" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,uVar21" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ; (call_expression "uVar23 = (VVar20 + this_00->gp_) - VVar39;\n    if (!bVar62 || !bVar63)" (assignment_expression "uVar23 = (VVar20 + this_00->gp_) - VVar39" identifier = (binary_expression "(VVar20 + this_00->gp_) - VVar39" (parenthesized_expression "(VVar20 + this_00->gp_)" ( (binary_expression "VVar20 + this_00->gp_" identifier + (field_expression "this_00->gp_" identifier -> field_identifier)) )) - identifier)) (ERROR ";\n    if" ; if) (argument_list "(!bVar62 || !bVar63)" ( (binary_expression "!bVar62 || !bVar63" (unary_expression "!bVar62" ! identifier) || (unary_expression "!bVar63" ! identifier)) ))) (compound_statement "{\nLAB_002c5ccb:\n      uVar23 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;\n      pRVar50 = (Relocate *)view;\nLAB_002c5c85:\n      pRVar50->calculated_value_ = uVar23;\n      goto LAB_002c5c87;\n    }" { (labeled_statement "LAB_002c5ccb:\n      uVar23 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;" statement_identifier : (expression_statement "uVar23 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;" (assignment_expression "uVar23 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18" identifier = (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18" (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8" (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8" (binary_expression "uVar23 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar23 & 0xff0000) >> 8" (parenthesized_expression "(uVar23 & 0xff0000)" ( (binary_expression "uVar23 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar23 & 0xff00) << 8" (parenthesized_expression "(uVar23 & 0xff00)" ( (binary_expression "uVar23 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar23 << 0x18" identifier << number_literal))) ;)) (expression_statement "pRVar50 = (Relocate *)view;" (assignment_expression "pRVar50 = (Relocate *)view" identifier = (cast_expression "(Relocate *)view" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (labeled_statement "LAB_002c5c85:\n      pRVar50->calculated_value_ = uVar23;" statement_identifier : (expression_statement "pRVar50->calculated_value_ = uVar23;" (assignment_expression "pRVar50->calculated_value_ = uVar23" (field_expression "pRVar50->calculated_value_" identifier -> field_identifier) = identifier) ;)) (goto_statement "goto LAB_002c5c87;" goto statement_identifier ;) }) goto identifier ; case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "object = (_List_node_base **)0x12" identifier = (cast_expression "(_List_node_base **)0x12" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) identifier = identifier ( (cast_expression "(Relocate *)gsym" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (ERROR "(Mips_symbol<32> *)0x12,(uint)output_section,\n                        (Output_section *)target,pTVar54);\n    if (bVar62)" (call_expression "(Mips_symbol<32> *)0x12,(uint)output_section,\n                        (Output_section *)target,pTVar54);\n    if (bVar62)" (parenthesized_expression "(Mips_symbol<32> *)0x12,(uint)output_section,\n                        (Output_section *)target,pTVar54)" ( (comma_expression "Mips_symbol<32> *)0x12,(uint)output_section,\n                        (Output_section *)target,pTVar54" (binary_expression "Mips_symbol<32> *)0x12" (binary_expression "Mips_symbol<32" identifier < number_literal) > (pointer_expression "*)0x12" * (ERROR ")" )) number_literal)) , (comma_expression "(uint)output_section,\n                        (Output_section *)target,pTVar54" (cast_expression "(uint)output_section" ( (type_descriptor "uint" type_identifier) ) identifier) , (comma_expression "(Output_section *)target,pTVar54" (cast_expression "(Output_section *)target" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier))) )) (ERROR ";\n    if" ; if) (argument_list "(bVar62)" ( identifier )))) (compound_statement "{\n      cVar47 = this->calculate_only_;\n      VVar20 = local_c8;\n      if (bVar61 != false) {\n        uVar10 = *(undefined8 *)view;\n        VVar20 = (uint)(byte)((ulong)uVar10 >> 0x38) |\n                 ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n                 (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }\n      goto LAB_002c6b22;\n    }" { (expression_statement "cVar47 = this->calculate_only_;" (assignment_expression "cVar47 = this->calculate_only_" identifier = (field_expression "this->calculate_only_" identifier -> field_identifier)) ;) (expression_statement "VVar20 = local_c8;" (assignment_expression "VVar20 = local_c8" identifier = identifier) ;) (if_statement "if (bVar61 != false) {\n        uVar10 = *(undefined8 *)view;\n        VVar20 = (uint)(byte)((ulong)uVar10 >> 0x38) |\n                 ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n                 (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }" if (parenthesized_expression "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) )) (compound_statement "{\n        uVar10 = *(undefined8 *)view;\n        VVar20 = (uint)(byte)((ulong)uVar10 >> 0x38) |\n                 ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n                 (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;\n      }" { (expression_statement "uVar10 = *(undefined8 *)view;" (assignment_expression "uVar10 = *(undefined8 *)view" identifier = (pointer_expression "*(undefined8 *)view" * (cast_expression "(undefined8 *)view" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "VVar20 = (uint)(byte)((ulong)uVar10 >> 0x38) |\n                 ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n                 (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;" (assignment_expression "VVar20 = (uint)(byte)((ulong)uVar10 >> 0x38) |\n                 ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n                 (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000" identifier = (binary_expression "(uint)(byte)((ulong)uVar10 >> 0x38) |\n                 ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n                 (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000" (binary_expression "(uint)(byte)((ulong)uVar10 >> 0x38) |\n                 ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |\n                 (uint)((ulong)uVar10 >> 0x18) & 0xff0000" (binary_expression "(uint)(byte)((ulong)uVar10 >> 0x38) |\n                 ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8" (call_expression "(uint)(byte)((ulong)uVar10 >> 0x38)" (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(byte)" ( identifier ))) (argument_list "((ulong)uVar10 >> 0x38)" ( (binary_expression "(ulong)uVar10 >> 0x38" (cast_expression "(ulong)uVar10" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) ))) | (binary_expression "((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8" (parenthesized_expression "((uint)((ulong)uVar10 >> 0x20) & 0xff0000)" ( (binary_expression "(uint)((ulong)uVar10 >> 0x20) & 0xff0000" (call_expression "(uint)((ulong)uVar10 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulong)uVar10 >> 0x20)" ( (binary_expression "(ulong)uVar10 >> 0x20" (cast_expression "(ulong)uVar10" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) ))) & number_literal) )) >> number_literal)) | (binary_expression "(uint)((ulong)uVar10 >> 0x18) & 0xff0000" (call_expression "(uint)((ulong)uVar10 >> 0x18)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulong)uVar10 >> 0x18)" ( (binary_expression "(ulong)uVar10 >> 0x18" (cast_expression "(ulong)uVar10" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) ))) & number_literal)) | (binary_expression "(uint)((ulong)uVar10 >> 8) & 0xff000000" (call_expression "(uint)((ulong)uVar10 >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulong)uVar10 >> 8)" ( (binary_expression "(ulong)uVar10 >> 8" (cast_expression "(ulong)uVar10" ( (type_descriptor "ulong" type_identifier) ) identifier) >> number_literal) ))) & number_literal))) ;) })) (goto_statement "goto LAB_002c6b22;" goto statement_identifier ;) }) (ERROR "break;\n  case 0x13:\n  case 0x91:\n  case 0xf9:\n    bVar61 = false;\nswitchD_002c5379_caseD_13:\n    pMVar53 = (Mips_relobj<32" break ; case number_literal : case number_literal : case number_literal : identifier = false ; identifier : identifier = ( identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier))) (ERROR ";\n    if" ; if) ( (ERROR "gsym != (Sized_symbol<32> *)0x0) {\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)gsym;\n        local_e8 = Mips_output_data_got<32,_true>::got_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                              (Mips_relobj<32,_true> *)this_00);\n        goto LAB_002c6043;\n      }\n      goto LAB_002c827b;\n    }\n    if" (binary_expression "gsym != (Sized_symbol<32> *)0x0)" identifier != (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) (compound_statement "{\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)gsym;\n        local_e8 = Mips_output_data_got<32,_true>::got_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                              (Mips_relobj<32,_true> *)this_00);\n        goto LAB_002c6043;\n      }\n      goto LAB_002c827b;\n    }" { (if_statement "if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)gsym;\n        local_e8 = Mips_output_data_got<32,_true>::got_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                              (Mips_relobj<32,_true> *)this_00);\n        goto LAB_002c6043;\n      }" if (parenthesized_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\n        object = (_List_node_base **)gsym;\n        local_e8 = Mips_output_data_got<32,_true>::got_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                              (Mips_relobj<32,_true> *)this_00);\n        goto LAB_002c6043;\n      }" { (expression_statement "object = (_List_node_base **)gsym;" (assignment_expression "object = (_List_node_base **)gsym" identifier = (cast_expression "(_List_node_base **)gsym" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "local_e8 = Mips_output_data_got<32,_true>::got_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                              (Mips_relobj<32,_true> *)this_00);" (comma_expression "local_e8 = Mips_output_data_got<32,_true>::got_offset" (assignment_expression "local_e8 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , (binary_expression "_true>::got_offset" identifier > (ERROR "::" : :) identifier)) (ERROR "((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                              (Mips_relobj<32,_true> *)this_00)" ( ( (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                              (Mips_relobj<32,_true> *)this_00)" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,&gsym->super_Symbol,0,\n                              (Mips_relobj<32,_true> *)this_00)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "&gsym->super_Symbol,0,\n                              (Mips_relobj<32,_true> *)this_00)" (pointer_expression "&gsym->super_Symbol" & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) , (comma_expression "0,\n                              (Mips_relobj<32,_true> *)this_00)" number_literal , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) ))))))) ;) (goto_statement "goto LAB_002c6043;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c827b;" goto statement_identifier ;) }) if) ( (ERROR "pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8364;\n    object = (_List_node_base **)(ulong)_Var14;" (binary_expression "pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8364;\n    object = (_List_node_base **)(ulong)_Var14" identifier == (ERROR "(Mips_relobj<32,_false> *)0x0) goto LAB_002c8364;" (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) identifier identifier ;) (assignment_expression "object = (_List_node_base **)(ulong)_Var14" identifier = (cast_expression "(_List_node_base **)(ulong)_Var14" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)_Var14" ( (type_descriptor "ulong" type_identifier) ) identifier)))) ;) identifier = ( (pointer_expression "*(((Sized_relobj<32,_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                 super_Relobj).super_Object._vptr_Object[0x2c])\n                         (this_00,object,0,(long)(int)local_c8)" * (call_expression "(((Sized_relobj<32,_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                 super_Relobj).super_Object._vptr_Object[0x2c])\n                         (this_00,object,0,(long)(int)local_c8)" (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                 super_Relobj).super_Object._vptr_Object[0x2c])" ( (subscript_expression "((Sized_relobj<32,_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                 super_Relobj).super_Object._vptr_Object[0x2c]" (field_expression "((Sized_relobj<32,_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                 super_Relobj).super_Object._vptr_Object" (field_expression "((Sized_relobj<32,_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                 super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                 super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                 super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(this_00->super_Sized_relobj_file<32,_false>)" ( (comma_expression "this_00->super_Sized_relobj_file<32,_false" (binary_expression "this_00->super_Sized_relobj_file<32" (field_expression "this_00->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) [ number_literal ]) )) (argument_list "(this_00,object,0,(long)(int)local_c8)" ( identifier , identifier , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) (ERROR ";\nLAB_002c6043:\n    pMVar53 =" ; identifier : identifier =) ( (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier))) (ERROR ";\n    if" ; if) ( (ERROR "pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8276;\n    object = (_List_node_base **)(ulong)local_e8;" (binary_expression "pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8276;\n    object = (_List_node_base **)(ulong)local_e8" identifier == (ERROR "(Mips_relobj<32,_false> *)0x0) goto LAB_002c8276;" (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) identifier identifier ;) (assignment_expression "object = (_List_node_base **)(ulong)local_e8" identifier = (cast_expression "(_List_node_base **)(ulong)local_e8" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)local_e8" ( (type_descriptor "ulong" type_identifier) ) identifier)))) ;) (assignment_expression "uVar23 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , identifier > (ERROR "::" : :) identifier ( ( (ERROR "Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00);\n    if (uVar21 == 0xf9) {\n      pRVar50 = this;\n      if (this->calculate_only_ == false) goto LAB_002c5ccb;\n      goto LAB_002c5c85;\n    }\n    if (this->calculate_only_ == false) goto LAB_002c6098;\n    goto LAB_002c59a8;\n  case 0x14:\n  case 0x92:\n    bVar61 = false;\nswitchD_002c5379_caseD_14:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar23 = uVar49;\n    if (bVar61 == false) {\n      uVar23 = local_c8;\n    }" (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00)" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "local_e8,\n                        (Mips_relobj<32,_true> *)this_00)" identifier , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) ))))) ; if (parenthesized_expression "(uVar21 == 0xf9)" ( (binary_expression "uVar21 == 0xf9" identifier == number_literal) )) (compound_statement "{\n      pRVar50 = this;\n      if (this->calculate_only_ == false) goto LAB_002c5ccb;\n      goto LAB_002c5c85;\n    }" { (expression_statement "pRVar50 = this;" (assignment_expression "pRVar50 = this" identifier = identifier) ;) (if_statement "if (this->calculate_only_ == false) goto LAB_002c5ccb;" if (parenthesized_expression "(this->calculate_only_ == false)" ( (binary_expression "this->calculate_only_ == false" (field_expression "this->calculate_only_" identifier -> field_identifier) == false) )) (goto_statement "goto LAB_002c5ccb;" goto statement_identifier ;)) (goto_statement "goto LAB_002c5c85;" goto statement_identifier ;) }) if (parenthesized_expression "(this->calculate_only_ == false)" ( (binary_expression "this->calculate_only_ == false" (field_expression "this->calculate_only_" identifier -> field_identifier) == false) )) identifier identifier ; goto identifier ; case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal))) ; (call_expression "uVar23 = uVar49;\n    if (bVar61 == false)" (assignment_expression "uVar23 = uVar49" identifier = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 == false)" ( (binary_expression "bVar61 == false" identifier == false) ))) (compound_statement "{\n      uVar23 = local_c8;\n    }" { (expression_statement "uVar23 = local_c8;" (assignment_expression "uVar23 = local_c8" identifier = identifier) ;) })) identifier = ( (ERROR "Mips_relobj<32,_false> *)psymval;\n    VVar20 = gold::" (comma_expression "Mips_relobj<32,_false> *)psymval" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)psymval" identifier > (pointer_expression "*)psymval" * (ERROR ")" )) identifier))) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);\n    value = VVar20 + 0x8000 & 0xffff0000;" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,uVar23)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,uVar23" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,uVar23" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ; (assignment_expression "value = VVar20 + 0x8000 & 0xffff0000" identifier = (binary_expression "VVar20 + 0x8000 & 0xffff0000" (binary_expression "VVar20 + 0x8000" identifier + number_literal) & number_literal)) ;) identifier = ( (ERROR "Mips_relobj<32,_true> *)target->got_;\n    if" (comma_expression "Mips_relobj<32,_true> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ; if) ( (ERROR "pMVar45 != (Mips_relobj<32,_true> *)0x0)" (binary_expression "pMVar45 != (Mips_relobj<32,_true> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_true> *)0x0)" ( (comma_expression "Mips_relobj<32,_true> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )))) { (if_statement "if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }" if (parenthesized_expression "((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0)" ( (comma_expression "(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0" (binary_expression "(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32" (field_expression "(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj" (parenthesized_expression "(pMVar45->super_Sized_relobj_file<32,_true>)" ( (comma_expression "pMVar45->super_Sized_relobj_file<32,_true" (binary_expression "pMVar45->super_Sized_relobj_file<32" (field_expression "pMVar45->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) < number_literal) , (binary_expression "_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0" (field_expression "_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize" (field_expression "_true>.\n          local_got_offsets_._M_h._M_rehash_policy" (field_expression "_true>.\n          local_got_offsets_._M_h" (field_expression "_true>.\n          local_got_offsets_" identifier (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) == number_literal)) )) (compound_statement "{\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }" { (expression_statement "pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;" (assignment_expression "pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy" identifier = (pointer_expression "*(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy" * (parenthesized_expression "(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy" ( (comma_expression "Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy" (binary_expression "Mips_relobj<32" identifier < number_literal) , (comma_expression "_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy" (binary_expression "_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32" (binary_expression "_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj" identifier > (pointer_expression "**)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj" * (pointer_expression "*)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj" & (field_expression "(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj" (parenthesized_expression "(pMVar45->super_Sized_relobj_file<32,_true>)" ( (comma_expression "pMVar45->super_Sized_relobj_file<32,_true" (binary_expression "pMVar45->super_Sized_relobj_file<32" (field_expression "pMVar45->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier))))) < number_literal) , (field_expression "_true>.\n                    local_got_offsets_._M_h._M_rehash_policy" (field_expression "_true>.\n                    local_got_offsets_._M_h" (field_expression "_true>.\n                    local_got_offsets_" identifier (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier))) )))) ;) }) (else_clause "else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }" else (compound_statement "{\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }" { (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)this_00->got_info_" ( (comma_expression "Mips_relobj<32,_false> *)this_00->got_info_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier)))) ))) ;) }))) if (parenthesized_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) { (assignment_expression "uVar23 = Mips_got_info<32" identifier = (binary_expression "Mips_got_info<32" identifier < number_literal)) , identifier > (ERROR "::" : :) identifier ( ( (ERROR "Mips_got_info<32,_true> *)pMVar53,value,\n                            (Mips_output_data_got<32,_true> *)pMVar45);" (comma_expression "Mips_got_info<32,_true> *)pMVar53,value,\n                            (Mips_output_data_got<32,_true> *)pMVar45)" (binary_expression "Mips_got_info<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,value,\n                            (Mips_output_data_got<32,_true> *)pMVar45)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "value,\n                            (Mips_output_data_got<32,_true> *)pMVar45)" identifier , (parenthesized_expression "(Mips_output_data_got<32,_true> *)pMVar45)" ( (comma_expression "Mips_output_data_got<32,_true> *)pMVar45" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (binary_expression "_true> *)pMVar45" identifier > (pointer_expression "*)pMVar45" * (ERROR ")" )) identifier))) ))))) ;) identifier = ( (ERROR "Mips_relobj<32,_false> *)target->got_;\n        if" (comma_expression "Mips_relobj<32,_false> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ; if) (call_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n          object = (_List_node_base **)(ulong)uVar23;\n          uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,uVar23,\n                              (Mips_relobj<32,_true> *)this_00);\n          if ((bool)cVar47) goto LAB_002c59a8;\n          uVar49 = uVar49 ^ uVar23;\n          uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;\n          goto LAB_002c60ab;\n        }\n        goto LAB_002c8280;\n      }\n      goto LAB_002c8285;\n    }\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81a2:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false) {\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }\n    if ((bool)cVar47) {\n      SVar27 = STATUS_OKAY;\n      this->calculated_value_ = uVar26;\n    }\n    else {\n      uVar23 = uVar23 ^ uVar26;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n      SVar27 = (Status)(0xffff < uVar26 + 0x8000)" (call_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n          object = (_List_node_base **)(ulong)uVar23;\n          uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,uVar23,\n                              (Mips_relobj<32,_true> *)this_00);\n          if ((bool)cVar47) goto LAB_002c59a8;\n          uVar49 = uVar49 ^ uVar23;\n          uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;\n          goto LAB_002c60ab;\n        }\n        goto LAB_002c8280;\n      }\n      goto LAB_002c8285;\n    }\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81a2:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false) {\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }\n    if ((bool)cVar47) {\n      SVar27 = STATUS_OKAY;\n      this->calculated_value_ = uVar26;\n    }\n    else {\n      uVar23 = uVar23 ^ uVar26;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n      SVar27 = (Status)" (assignment_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n          object = (_List_node_base **)(ulong)uVar23;\n          uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,uVar23,\n                              (Mips_relobj<32,_true> *)this_00);\n          if ((bool)cVar47) goto LAB_002c59a8;\n          uVar49 = uVar49 ^ uVar23;\n          uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;\n          goto LAB_002c60ab;\n        }\n        goto LAB_002c8280;\n      }\n      goto LAB_002c8285;\n    }\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81a2:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false) {\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }\n    if ((bool)cVar47) {\n      SVar27 = STATUS_OKAY;\n      this->calculated_value_ = uVar26;\n    }\n    else {\n      uVar23 = uVar23 ^ uVar26;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21" (parenthesized_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n          object = (_List_node_base **)(ulong)uVar23;\n          uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,uVar23,\n                              (Mips_relobj<32,_true> *)this_00);\n          if ((bool)cVar47) goto LAB_002c59a8;\n          uVar49 = uVar49 ^ uVar23;\n          uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;\n          goto LAB_002c60ab;\n        }\n        goto LAB_002c8280;\n      }\n      goto LAB_002c8285;\n    }\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81a2:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false) {\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }\n    if ((bool)cVar47) {\n      SVar27 = STATUS_OKAY;\n      this->calculated_value_ = uVar26;\n    }\n    else {\n      uVar23 = uVar23 ^ uVar26;\n      *(uint *)" ( (ERROR "pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n          object = (_List_node_base **)(ulong)uVar23;\n          uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,uVar23,\n                              (Mips_relobj<32,_true> *)this_00);\n          if ((bool)cVar47) goto LAB_002c59a8;\n          uVar49 = uVar49 ^ uVar23;\n          uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;\n          goto LAB_002c60ab;\n        }\n        goto LAB_002c8280;\n      }\n      goto LAB_002c8285;\n    }" (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) (compound_statement "{\n          object = (_List_node_base **)(ulong)uVar23;\n          uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,uVar23,\n                              (Mips_relobj<32,_true> *)this_00);\n          if ((bool)cVar47) goto LAB_002c59a8;\n          uVar49 = uVar49 ^ uVar23;\n          uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;\n          goto LAB_002c60ab;\n        }" { (expression_statement "object = (_List_node_base **)(ulong)uVar23;" (assignment_expression "object = (_List_node_base **)(ulong)uVar23" identifier = (cast_expression "(_List_node_base **)(ulong)uVar23" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)uVar23" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                             ((Mips_output_data_got<32,_true> *)pMVar53,uVar23,\n                              (Mips_relobj<32,_true> *)this_00);" (comma_expression "uVar23 = Mips_output_data_got<32,_true>::gp_offset" (assignment_expression "uVar23 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , (binary_expression "_true>::gp_offset" identifier > (ERROR "::" : :) identifier)) (ERROR "((Mips_output_data_got<32,_true> *)pMVar53,uVar23,\n                              (Mips_relobj<32,_true> *)this_00)" ( ( (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,uVar23,\n                              (Mips_relobj<32,_true> *)this_00)" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,uVar23,\n                              (Mips_relobj<32,_true> *)this_00)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "uVar23,\n                              (Mips_relobj<32,_true> *)this_00)" identifier , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) )))))) ;) (if_statement "if ((bool)cVar47) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar49 = uVar49 ^ uVar23;" (assignment_expression "uVar49 = uVar49 ^ uVar23" identifier = (binary_expression "uVar49 ^ uVar23" identifier ^ identifier)) ;) (expression_statement "uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;" (assignment_expression "uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21" identifier = (binary_expression "((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21" (parenthesized_expression "((uVar49 & 0xff00) << 8 | uVar49 << 0x18)" ( (binary_expression "(uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar49 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (goto_statement "goto LAB_002c60ab;" goto statement_identifier ;) }) goto identifier ; } goto identifier ; }) (comma_expression "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81a2:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false) {\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }\n    if ((bool)cVar47) {\n      SVar27 = STATUS_OKAY" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81a2:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false) {\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }\n    if ((bool)cVar47) {\n      SVar27 = STATUS_OKAY" identifier > (ERROR "::" : :) (assignment_expression "got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81a2:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false) {\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }\n    if ((bool)cVar47) {\n      SVar27 = STATUS_OKAY" (call_expression "got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c81a2:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false) {\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }\n    if ((bool)cVar47)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53);\nLAB_002c81a2:\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false) {\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }\n    if ((bool)cVar47)" ( (ERROR "(Target_mips<32,_true> *)pMVar53);\nLAB_002c81a2:" (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ; identifier :) (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false) {\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }\n    if ((bool)" identifier > (ERROR "::" : :) (call_expression "got_section((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false) {\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }\n    if ((bool)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false) {\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }\n    if ((bool)" ( (ERROR "(Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c81a7;\n  case 0x15:\n  case 0x93:\n    bVar61 = false;\nswitchD_002c5379_caseD_15:\n    uVar21 = *(uint *)view;\n    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar26 = uVar23;\n    if (bVar61 == false) {\n      uVar26 = local_c8;\n    }\n    if (local_e2 != false)" (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ; goto identifier ; case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal))) ; (call_expression "uVar26 = uVar23;\n    if (bVar61 == false)" (assignment_expression "uVar26 = uVar23" identifier = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 == false)" ( (binary_expression "bVar61 == false" identifier == false) ))) (compound_statement "{\n      uVar26 = local_c8;\n    }" { (expression_statement "uVar26 = local_c8;" (assignment_expression "uVar26 = local_c8" identifier = identifier) ;) }) if (parenthesized_expression "(local_e2 != false)" ( (binary_expression "local_e2 != false" identifier != false) ))) (compound_statement "{\n      object = (_List_node_base **)this_00;\n      pTVar54 = (Target_mips<32,_true> *)psymval;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar41 = VVar20 + 0x8000 & 0xffff0000;\n      pMVar45 = (Mips_relobj<32,_true> *)target->got_;\n      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }\n      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;\n      Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);\n      uVar26 = VVar20 - uVar41;\n    }" { (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "pTVar54 = (Target_mips<32,_true> *)psymval;" (assignment_expression "pTVar54 = (Target_mips<32,_true> *)psymval" identifier = (parenthesized_expression "(Target_mips<32,_true> *)psymval" ( (comma_expression "Target_mips<32,_true> *)psymval" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)psymval" identifier > (pointer_expression "*)psymval" * (ERROR ")" )) identifier))) ))) ;) (expression_statement "VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26)" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true" (binary_expression "VVar20 = gold::Symbol_value<32>::value" (binary_expression "VVar20 = gold::Symbol_value<32" (assignment_expression "VVar20 = gold" identifier = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,uVar26)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,uVar26" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,uVar26" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ))) ;) (expression_statement "uVar41 = VVar20 + 0x8000 & 0xffff0000;" (assignment_expression "uVar41 = VVar20 + 0x8000 & 0xffff0000" identifier = (binary_expression "VVar20 + 0x8000 & 0xffff0000" (binary_expression "VVar20 + 0x8000" identifier + number_literal) & number_literal)) ;) (expression_statement "pMVar45 = (Mips_relobj<32,_true> *)target->got_;" (assignment_expression "pMVar45 = (Mips_relobj<32,_true> *)target->got_" identifier = (parenthesized_expression "(Mips_relobj<32,_true> *)target->got_" ( (comma_expression "Mips_relobj<32,_true> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ))) ;) (if_statement "if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }" if (parenthesized_expression "(pMVar45 == (Mips_relobj<32,_true> *)0x0)" ( (binary_expression "pMVar45 == (Mips_relobj<32,_true> *)0x0)" identifier == (parenthesized_expression "(Mips_relobj<32,_true> *)0x0)" ( (comma_expression "Mips_relobj<32,_true> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\n        Target_mips<32,_true>::got_section(pTVar54);\n        goto LAB_002c8390;\n      }" { (expression_statement "Target_mips<32,_true>::got_section(pTVar54);" (comma_expression "Target_mips<32,_true>::got_section(pTVar54)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section(pTVar54)" identifier > (ERROR "::" : :) (call_expression "got_section(pTVar54)" identifier (argument_list "(pTVar54)" ( identifier ))))) ;) (goto_statement "goto LAB_002c8390;" goto statement_identifier ;) })) (if_statement "if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }\n      else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }" if (parenthesized_expression "((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0)" ( (comma_expression "(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0" (binary_expression "(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32" (field_expression "(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj" (parenthesized_expression "(pMVar45->super_Sized_relobj_file<32,_true>)" ( (comma_expression "pMVar45->super_Sized_relobj_file<32,_true" (binary_expression "pMVar45->super_Sized_relobj_file<32" (field_expression "pMVar45->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier) < number_literal) , (binary_expression "_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0" (field_expression "_true>.\n          local_got_offsets_._M_h._M_rehash_policy._M_next_resize" (field_expression "_true>.\n          local_got_offsets_._M_h._M_rehash_policy" (field_expression "_true>.\n          local_got_offsets_._M_h" (field_expression "_true>.\n          local_got_offsets_" identifier (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier) . field_identifier) == number_literal)) )) (compound_statement "{\n        pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;\n      }" { (expression_statement "pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy;" (assignment_expression "pMVar53 = *(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy" identifier = (pointer_expression "*(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy" * (parenthesized_expression "(Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy" ( (comma_expression "Mips_relobj<32,_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy" (binary_expression "Mips_relobj<32" identifier < number_literal) , (comma_expression "_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.\n                    local_got_offsets_._M_h._M_rehash_policy" (binary_expression "_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32" (binary_expression "_false> **)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj" identifier > (pointer_expression "**)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj" * (pointer_expression "*)\n                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj" & (field_expression "(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj" (parenthesized_expression "(pMVar45->super_Sized_relobj_file<32,_true>)" ( (comma_expression "pMVar45->super_Sized_relobj_file<32,_true" (binary_expression "pMVar45->super_Sized_relobj_file<32" (field_expression "pMVar45->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier))))) < number_literal) , (field_expression "_true>.\n                    local_got_offsets_._M_h._M_rehash_policy" (field_expression "_true>.\n                    local_got_offsets_._M_h" (field_expression "_true>.\n                    local_got_offsets_" identifier (ERROR ">" >) . field_identifier) . field_identifier) . field_identifier))) )))) ;) }) (else_clause "else {\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }" else (compound_statement "{\n        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;\n      }" { (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)this_00->got_info_" ( (comma_expression "Mips_relobj<32,_false> *)this_00->got_info_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier)))) ))) ;) }))) (if_statement "if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;" if (parenthesized_expression "(pMVar53 == (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar53 == (Mips_relobj<32,_false> *)0x0)" identifier == (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (goto_statement "goto LAB_002c82c4;" goto statement_identifier ;)) (expression_statement "Mips_got_info<32,_true>::get_got_page_offset\n                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                );" (comma_expression "Mips_got_info<32,_true>::get_got_page_offset" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true>::get_got_page_offset" identifier > (ERROR "::" : :) identifier)) (ERROR "((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                )" ( ( (comma_expression "Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                )" (binary_expression "Mips_got_info<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                )" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "uVar41,(Mips_output_data_got<32,_true> *)pMVar45\n                )" identifier , (parenthesized_expression "(Mips_output_data_got<32,_true> *)pMVar45\n                )" ( (comma_expression "Mips_output_data_got<32,_true> *)pMVar45" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (binary_expression "_true> *)pMVar45" identifier > (pointer_expression "*)pMVar45" * (ERROR ")" )) identifier))) )))))) ;) (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26)" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true" (binary_expression "VVar20 = gold::Symbol_value<32>::value" (binary_expression "VVar20 = gold::Symbol_value<32" (assignment_expression "VVar20 = gold" identifier = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,uVar26)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,uVar26" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,uVar26" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ))) ;) (expression_statement "uVar26 = VVar20 - uVar41;" (assignment_expression "uVar26 = VVar20 - uVar41" identifier = (binary_expression "VVar20 - uVar41" identifier - identifier)) ;) }) (ERROR "if ((bool" if ( ( primitive_type) )))) (ERROR "cVar47" identifier) ))) (ERROR "{\n      SVar27" { identifier) = identifier))) (ERROR ";\n      this->calculated_value_ = uVar26;\n    }\n    else {\n      uVar23 = uVar23 ^ uVar26;\n      *(uint *" ; identifier -> identifier = identifier ; } else { identifier = identifier ^ identifier ; * ( identifier *) )) (ERROR "view" identifier) = (binary_expression "((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21" (parenthesized_expression "((uVar23 & 0xff00) << 8 | uVar23 << 0x18)" ( (binary_expression "(uVar23 & 0xff00) << 8 | uVar23 << 0x18" (binary_expression "(uVar23 & 0xff00) << 8" (parenthesized_expression "(uVar23 & 0xff00)" ( (binary_expression "uVar23 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar23 << 0x18" identifier << number_literal)) )) ^ identifier)) (ERROR ";\n      SVar27 =" ; identifier =) (argument_list "(Status)" ( identifier ))) (argument_list "(0xffff < uVar26 + 0x8000)" ( (binary_expression "0xffff < uVar26 + 0x8000" number_literal < (binary_expression "uVar26 + 0x8000" identifier + number_literal)) ))) (ERROR ";\n      object =" ; identifier =) ( (ERROR "_List_node_base **)view;\n    }\n    break;\n  case 0x16:\n  case 0x1e:\n  case 0x94:\n  case 0x99:\n    bVar61 = false;\nswitchD_002c5379_caseD_16:" (binary_expression "_List_node_base **)view" identifier * (pointer_expression "*)view" * (ERROR ")" )) identifier)) ; } break ; case number_literal : case number_literal : case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier :) identifier = ( (ERROR "Mips_relobj<32,_false> *)target->got_;\n    if" (comma_expression "Mips_relobj<32,_false> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ; if) ( (ERROR "gsym == (Sized_symbol<32> *)0x0) {\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);\n        goto LAB_002c5e6e;\n      }\n      goto LAB_002c81a2;\n    }\n    if" (binary_expression "gsym == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) (compound_statement "{\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);\n        goto LAB_002c5e6e;\n      }\n      goto LAB_002c81a2;\n    }" { (if_statement "if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);\n        goto LAB_002c5e6e;\n      }" if (parenthesized_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\n        object = (_List_node_base **)(ulong)_Var14;\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);\n        goto LAB_002c5e6e;\n      }" { (expression_statement "object = (_List_node_base **)(ulong)_Var14;" (assignment_expression "object = (_List_node_base **)(ulong)_Var14" identifier = (cast_expression "(_List_node_base **)(ulong)_Var14" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)_Var14" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);" (assignment_expression "local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8)" identifier = (parenthesized_expression "(*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8)" ( (pointer_expression "*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8)" * (call_expression "(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8)" (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])" ( (subscript_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c]" (field_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object" (field_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(this_00->super_Sized_relobj_file<32,_false>)" ( (comma_expression "this_00->super_Sized_relobj_file<32,_false" (binary_expression "this_00->super_Sized_relobj_file<32" (field_expression "this_00->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) [ number_literal ]) )) (argument_list "(this_00,object,0,(long)(int)local_c8)" ( identifier , identifier , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ))) ;) (goto_statement "goto LAB_002c5e6e;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c81a2;" goto statement_identifier ;) }) if) ( (ERROR "pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8271;\n    object = (_List_node_base **)gsym;" (binary_expression "pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8271;\n    object = (_List_node_base **)gsym" identifier == (ERROR "(Mips_relobj<32,_false> *)0x0) goto LAB_002c8271;" (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) identifier identifier ;) (assignment_expression "object = (_List_node_base **)gsym" identifier = (cast_expression "(_List_node_base **)gsym" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (assignment_expression "local_e8 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , identifier > (ERROR "::" : :) identifier ( ( (ERROR "Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                          (Mips_relobj<32,_true> *)this_00);\nLAB_002c5e6e:" (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                          (Mips_relobj<32,_true> *)this_00)" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,&gsym->super_Symbol,0,\n                          (Mips_relobj<32,_true> *)this_00)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "&gsym->super_Symbol,0,\n                          (Mips_relobj<32,_true> *)this_00)" (pointer_expression "&gsym->super_Symbol" & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) , (comma_expression "0,\n                          (Mips_relobj<32,_true> *)this_00)" number_literal , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) )))))) ; identifier :) identifier = ( (ERROR "Mips_relobj<32,_false> *)target->got_;\n    if" (comma_expression "Mips_relobj<32,_false> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ; if) ( (ERROR "pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c826c;\n    object = (_List_node_base **)(ulong)local_e8;" (binary_expression "pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c826c;\n    object = (_List_node_base **)(ulong)local_e8" identifier == (ERROR "(Mips_relobj<32,_false> *)0x0) goto LAB_002c826c;" (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) identifier identifier ;) (assignment_expression "object = (_List_node_base **)(ulong)local_e8" identifier = (cast_expression "(_List_node_base **)(ulong)local_e8" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)local_e8" ( (type_descriptor "ulong" type_identifier) ) identifier)))) ;) (assignment_expression "iVar25 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , identifier > (ERROR "::" : :) identifier ( (binary_expression "(Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00);\n    uVar49 = iVar25 + 0x8000U >> 0x10;\n    if (this->calculate_only_ == false) {\n      SVar27 = STATUS_OKAY;\n      uVar23 = *(uint *)view;\n      uVar49 = uVar49 ^ (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8);\n      *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n      goto LAB_002c624f;\n    }\nLAB_002c67b0:\n    this->calculated_value_ = uVar49;\n    SVar27 = STATUS_OKAY;\nLAB_002c624f:\n    if (local_e1 != false) {\n      pMVar51 = target->got_;\n      if (pMVar51 == (Mips_output_data_got<32,_true> *)0x0) {\nLAB_002c638e:\n        cVar47 = (char)pMVar51;\n        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nswitchD_002c4f87_caseD_5:\n        bVar61 = false;\nswitchD_002c5379_caseD_5:\n        if (rel_type == 4) {\n          sVar56 = (size_t)local_f8;\n          object = (_List_node_base **)this_00;\n          SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_);\n        }\n        else {\n          if (rel_type != 9) goto LAB_002c81f5;\n          p_Var31 = (_List_node_base *)operator_new(0x40);\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n          SVar27 = STATUS_OKAY;\n          p_Var31[1]._M_next = (_List_node_base *)view;\n          p_Var31[1]._M_prev = (_List_node_base *)this_00;\n          p_Var31[2]._M_next = (_List_node_base *)psymval;\n          *(uint *)&p_Var31[2]._M_prev = local_c8;\n          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;\n          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n          *(Mips_address *)&p_Var31[3]._M_prev = address;\n          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;\n          std::__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n          _DAT_0067db50 = _DAT_0067db50 + 1;\n        }\n      }\n      else {\n        if (gsym != (Sized_symbol<32> *)0x0) {\nLAB_002c6275:\n          if ((char)gsym[1].value_ != '\0') {\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }\n        }\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        *(Value *)(pMVar51->got_view_ + local_e8) =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }\n    }\n    break;\n  case 0x17:\n  case 0x1f:\n  case 0x95:\n  case 0x9a:\n    bVar61 = false;\nswitchD_002c5379_caseD_17:\n    pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n    if (gsym == (Sized_symbol<32> *)0x0) {\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);\n        goto LAB_002c5ddf;\n      }\nLAB_002c8369:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c836e:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8373;\n    }\n    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n      object = (_List_node_base **)gsym;\n      local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                            (Mips_relobj<32,_true> *)this_00);\nLAB_002c5ddf:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)local_e8;\n        uVar49 = Mips_output_data_got<32,_true>::gp_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                            (Mips_relobj<32,_true> *)this_00);\n        if (this->calculate_only_ != false) goto LAB_002c67b0;\n        SVar27 = STATUS_OKAY;\n        uVar23 = *(uint *)view;\n        uVar49 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;\n        *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n        goto LAB_002c624f;\n      }\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n    }\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c826c:\n    Target_mips<32" (call_expression "(Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00);\n    uVar49 = iVar25 + 0x8000U >> 0x10;\n    if (this->calculate_only_ == false) {\n      SVar27 = STATUS_OKAY;\n      uVar23 = *(uint *)view;\n      uVar49 = uVar49 ^ (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8);\n      *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n      goto LAB_002c624f;\n    }\nLAB_002c67b0:\n    this->calculated_value_ = uVar49;\n    SVar27 = STATUS_OKAY;\nLAB_002c624f:\n    if (local_e1 != false) {\n      pMVar51 = target->got_;\n      if (pMVar51 == (Mips_output_data_got<32,_true> *)0x0) {\nLAB_002c638e:\n        cVar47 = (char)pMVar51;\n        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nswitchD_002c4f87_caseD_5:\n        bVar61 = false;\nswitchD_002c5379_caseD_5:\n        if (rel_type == 4) {\n          sVar56 = (size_t)local_f8;\n          object = (_List_node_base **)this_00;\n          SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_);\n        }\n        else {\n          if (rel_type != 9) goto LAB_002c81f5;\n          p_Var31 = (_List_node_base *)operator_new(0x40);\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n          SVar27 = STATUS_OKAY;\n          p_Var31[1]._M_next = (_List_node_base *)view;\n          p_Var31[1]._M_prev = (_List_node_base *)this_00;\n          p_Var31[2]._M_next = (_List_node_base *)psymval;\n          *(uint *)&p_Var31[2]._M_prev = local_c8;\n          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;\n          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n          *(Mips_address *)&p_Var31[3]._M_prev = address;\n          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;\n          std::__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n          _DAT_0067db50 = _DAT_0067db50 + 1;\n        }\n      }\n      else {\n        if (gsym != (Sized_symbol<32> *)0x0) {\nLAB_002c6275:\n          if ((char)gsym[1].value_ != '\0') {\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }\n        }\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        *(Value *)(pMVar51->got_view_ + local_e8) =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }\n    }\n    break;\n  case 0x17:\n  case 0x1f:\n  case 0x95:\n  case 0x9a:\n    bVar61 = false;\nswitchD_002c5379_caseD_17:\n    pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n    if (gsym == (Sized_symbol<32> *)0x0) {\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);\n        goto LAB_002c5ddf;\n      }\nLAB_002c8369:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c836e:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8373;\n    }\n    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n      object = (_List_node_base **)gsym;\n      local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                            (Mips_relobj<32,_true> *)this_00);\nLAB_002c5ddf:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)local_e8;\n        uVar49 = Mips_output_data_got<32,_true>::gp_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                            (Mips_relobj<32,_true> *)this_00);\n        if (this->calculate_only_ != false) goto LAB_002c67b0;\n        SVar27 = STATUS_OKAY;\n        uVar23 = *(uint *)view;\n        uVar49 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;\n        *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n        goto LAB_002c624f;\n      }\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n    }\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53)" (field_expression "(Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00);\n    uVar49 = iVar25 + 0x8000U >> 0x10;\n    if (this->calculate_only_ == false) {\n      SVar27 = STATUS_OKAY;\n      uVar23 = *(uint *)view;\n      uVar49 = uVar49 ^ (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8);\n      *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n      goto LAB_002c624f;\n    }\nLAB_002c67b0:\n    this->calculated_value_ = uVar49;\n    SVar27 = STATUS_OKAY;\nLAB_002c624f:\n    if (local_e1 != false) {\n      pMVar51 = target->got_;\n      if (pMVar51 == (Mips_output_data_got<32,_true> *)0x0) {\nLAB_002c638e:\n        cVar47 = (char)pMVar51;\n        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nswitchD_002c4f87_caseD_5:\n        bVar61 = false;\nswitchD_002c5379_caseD_5:\n        if (rel_type == 4) {\n          sVar56 = (size_t)local_f8;\n          object = (_List_node_base **)this_00;\n          SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_);\n        }\n        else {\n          if (rel_type != 9) goto LAB_002c81f5;\n          p_Var31 = (_List_node_base *)operator_new(0x40);\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n          SVar27 = STATUS_OKAY;\n          p_Var31[1]._M_next = (_List_node_base *)view;\n          p_Var31[1]._M_prev = (_List_node_base *)this_00;\n          p_Var31[2]._M_next = (_List_node_base *)psymval;\n          *(uint *)&p_Var31[2]._M_prev = local_c8;\n          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;\n          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n          *(Mips_address *)&p_Var31[3]._M_prev = address;\n          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;\n          std::__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n          _DAT_0067db50 = _DAT_0067db50 + 1;\n        }\n      }\n      else {\n        if (gsym != (Sized_symbol<32> *)0x0) {\nLAB_002c6275:\n          if ((char)gsym[1].value_ != '\0') {\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }\n        }\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        *(Value *)(pMVar51->got_view_ + local_e8) =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }\n    }\n    break;\n  case 0x17:\n  case 0x1f:\n  case 0x95:\n  case 0x9a:\n    bVar61 = false;\nswitchD_002c5379_caseD_17:\n    pMVar53 = (Mips_relobj<32,_false> *)target->got_" (parenthesized_expression "(Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00);\n    uVar49 = iVar25 + 0x8000U >> 0x10;\n    if (this->calculate_only_ == false) {\n      SVar27 = STATUS_OKAY;\n      uVar23 = *(uint *)view;\n      uVar49 = uVar49 ^ (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8);\n      *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n      goto LAB_002c624f;\n    }\nLAB_002c67b0:\n    this->calculated_value_ = uVar49;\n    SVar27 = STATUS_OKAY;\nLAB_002c624f:\n    if (local_e1 != false) {\n      pMVar51 = target->got_;\n      if (pMVar51 == (Mips_output_data_got<32,_true> *)0x0) {\nLAB_002c638e:\n        cVar47 = (char)pMVar51;\n        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nswitchD_002c4f87_caseD_5:\n        bVar61 = false;\nswitchD_002c5379_caseD_5:\n        if (rel_type == 4) {\n          sVar56 = (size_t)local_f8;\n          object = (_List_node_base **)this_00;\n          SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_);\n        }\n        else {\n          if (rel_type != 9) goto LAB_002c81f5;\n          p_Var31 = (_List_node_base *)operator_new(0x40);\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n          SVar27 = STATUS_OKAY;\n          p_Var31[1]._M_next = (_List_node_base *)view;\n          p_Var31[1]._M_prev = (_List_node_base *)this_00;\n          p_Var31[2]._M_next = (_List_node_base *)psymval;\n          *(uint *)&p_Var31[2]._M_prev = local_c8;\n          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;\n          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n          *(Mips_address *)&p_Var31[3]._M_prev = address;\n          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;\n          std::__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n          _DAT_0067db50 = _DAT_0067db50 + 1;\n        }\n      }\n      else {\n        if (gsym != (Sized_symbol<32> *)0x0) {\nLAB_002c6275:\n          if ((char)gsym[1].value_ != '\0') {\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }\n        }\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        *(Value *)(pMVar51->got_view_ + local_e8) =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }\n    }\n    break;\n  case 0x17:\n  case 0x1f:\n  case 0x95:\n  case 0x9a:\n    bVar61 = false;\nswitchD_002c5379_caseD_17:\n    pMVar53 = (Mips_relobj<32,_false> *)" ( (ERROR "Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00);\n    uVar49 = iVar25 + 0x8000U >> 0x10;\n    if (this->calculate_only_ == false) {\n      SVar27 = STATUS_OKAY;\n      uVar23 = *(uint *)view;\n      uVar49 = uVar49 ^ (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8);\n      *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n      goto LAB_002c624f;\n    }\nLAB_002c67b0:\n    this->calculated_value_ = uVar49;\n    SVar27 = STATUS_OKAY;\nLAB_002c624f:\n    if (local_e1 != false)" (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00)" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "local_e8,\n                        (Mips_relobj<32,_true> *)this_00)" identifier , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) ))))) ; (call_expression "uVar49 = iVar25 + 0x8000U >> 0x10;\n    if (this->calculate_only_ == false)" (assignment_expression "uVar49 = iVar25 + 0x8000U >> 0x10" identifier = (binary_expression "iVar25 + 0x8000U >> 0x10" (binary_expression "iVar25 + 0x8000U" identifier + number_literal) >> number_literal)) (ERROR ";\n    if" ; if) (argument_list "(this->calculate_only_ == false)" ( (binary_expression "this->calculate_only_ == false" (field_expression "this->calculate_only_" identifier -> field_identifier) == false) ))) (compound_statement "{\n      SVar27 = STATUS_OKAY;\n      uVar23 = *(uint *)view;\n      uVar49 = uVar49 ^ (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8);\n      *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n      goto LAB_002c624f;\n    }" { (expression_statement "SVar27 = STATUS_OKAY;" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ;) (expression_statement "uVar23 = *(uint *)view;" (assignment_expression "uVar23 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar49 = uVar49 ^ (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8);" (assignment_expression "uVar49 = uVar49 ^ (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8)" identifier = (binary_expression "uVar49 ^ (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8)" identifier ^ (parenthesized_expression "(uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8)" ( (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8" (binary_expression "uVar23 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar23 & 0xff0000) >> 8" (parenthesized_expression "(uVar23 & 0xff0000)" ( (binary_expression "uVar23 & 0xff0000" identifier & number_literal) )) >> number_literal)) )))) ;) (expression_statement "*(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;" (assignment_expression "*(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23" (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23" (parenthesized_expression "((uVar49 & 0xff00) << 8 | uVar49 << 0x18)" ( (binary_expression "(uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar49 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (goto_statement "goto LAB_002c624f;" goto statement_identifier ;) }) identifier : (assignment_expression "this->calculated_value_ = uVar49" (field_expression "this->calculated_value_" identifier -> field_identifier) = identifier) ; (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ; (call_expression "LAB_002c624f:\n    if (local_e1 != false)" identifier (ERROR ":\n    if" : if) (argument_list "(local_e1 != false)" ( (binary_expression "local_e1 != false" identifier != false) )))) (compound_statement "{\n      pMVar51 = target->got_;\n      if (pMVar51 == (Mips_output_data_got<32,_true> *)0x0) {\nLAB_002c638e:\n        cVar47 = (char)pMVar51;\n        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nswitchD_002c4f87_caseD_5:\n        bVar61 = false;\nswitchD_002c5379_caseD_5:\n        if (rel_type == 4) {\n          sVar56 = (size_t)local_f8;\n          object = (_List_node_base **)this_00;\n          SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_);\n        }\n        else {\n          if (rel_type != 9) goto LAB_002c81f5;\n          p_Var31 = (_List_node_base *)operator_new(0x40);\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n          SVar27 = STATUS_OKAY;\n          p_Var31[1]._M_next = (_List_node_base *)view;\n          p_Var31[1]._M_prev = (_List_node_base *)this_00;\n          p_Var31[2]._M_next = (_List_node_base *)psymval;\n          *(uint *)&p_Var31[2]._M_prev = local_c8;\n          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;\n          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n          *(Mips_address *)&p_Var31[3]._M_prev = address;\n          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;\n          std::__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n          _DAT_0067db50 = _DAT_0067db50 + 1;\n        }\n      }\n      else {\n        if (gsym != (Sized_symbol<32> *)0x0) {\nLAB_002c6275:\n          if ((char)gsym[1].value_ != '\0') {\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }\n        }\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        *(Value *)(pMVar51->got_view_ + local_e8) =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }\n    }" { (expression_statement "pMVar51 = target->got_;" (assignment_expression "pMVar51 = target->got_" identifier = (field_expression "target->got_" identifier -> field_identifier)) ;) (if_statement "if (pMVar51 == (Mips_output_data_got<32,_true> *)0x0) {\nLAB_002c638e:\n        cVar47 = (char)pMVar51;\n        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nswitchD_002c4f87_caseD_5:\n        bVar61 = false;\nswitchD_002c5379_caseD_5:\n        if (rel_type == 4) {\n          sVar56 = (size_t)local_f8;\n          object = (_List_node_base **)this_00;\n          SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_);\n        }\n        else {\n          if (rel_type != 9) goto LAB_002c81f5;\n          p_Var31 = (_List_node_base *)operator_new(0x40);\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n          SVar27 = STATUS_OKAY;\n          p_Var31[1]._M_next = (_List_node_base *)view;\n          p_Var31[1]._M_prev = (_List_node_base *)this_00;\n          p_Var31[2]._M_next = (_List_node_base *)psymval;\n          *(uint *)&p_Var31[2]._M_prev = local_c8;\n          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;\n          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n          *(Mips_address *)&p_Var31[3]._M_prev = address;\n          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;\n          std::__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n          _DAT_0067db50 = _DAT_0067db50 + 1;\n        }\n      }\n      else {\n        if (gsym != (Sized_symbol<32> *)0x0) {\nLAB_002c6275:\n          if ((char)gsym[1].value_ != '\0') {\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }\n        }\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        *(Value *)(pMVar51->got_view_ + local_e8) =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }" if (parenthesized_expression "(pMVar51 == (Mips_output_data_got<32,_true> *)0x0)" ( (binary_expression "pMVar51 == (Mips_output_data_got<32,_true> *)0x0)" identifier == (parenthesized_expression "(Mips_output_data_got<32,_true> *)0x0)" ( (comma_expression "Mips_output_data_got<32,_true> *)0x0" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\nLAB_002c638e:\n        cVar47 = (char)pMVar51;\n        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nswitchD_002c4f87_caseD_5:\n        bVar61 = false;\nswitchD_002c5379_caseD_5:\n        if (rel_type == 4) {\n          sVar56 = (size_t)local_f8;\n          object = (_List_node_base **)this_00;\n          SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_);\n        }\n        else {\n          if (rel_type != 9) goto LAB_002c81f5;\n          p_Var31 = (_List_node_base *)operator_new(0x40);\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n          SVar27 = STATUS_OKAY;\n          p_Var31[1]._M_next = (_List_node_base *)view;\n          p_Var31[1]._M_prev = (_List_node_base *)this_00;\n          p_Var31[2]._M_next = (_List_node_base *)psymval;\n          *(uint *)&p_Var31[2]._M_prev = local_c8;\n          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;\n          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n          *(Mips_address *)&p_Var31[3]._M_prev = address;\n          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;\n          std::__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n          _DAT_0067db50 = _DAT_0067db50 + 1;\n        }\n      }" { (labeled_statement "LAB_002c638e:\n        cVar47 = (char)pMVar51;" statement_identifier : (expression_statement "cVar47 = (char)pMVar51;" (assignment_expression "cVar47 = (char)pMVar51" identifier = (cast_expression "(char)pMVar51" ( (type_descriptor "char" primitive_type) ) identifier)) ;)) (expression_statement "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);" (comma_expression "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)pMVar53)" identifier > (ERROR "::" : :) (call_expression "got_section((Target_mips<32,_true> *)pMVar53)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53)" ( (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ))))) ;) (labeled_statement "switchD_002c4f87_caseD_5:\n        bVar61 = false;" statement_identifier : (expression_statement "bVar61 = false;" (assignment_expression "bVar61 = false" identifier = false) ;)) (labeled_statement "switchD_002c5379_caseD_5:\n        if (rel_type == 4) {\n          sVar56 = (size_t)local_f8;\n          object = (_List_node_base **)this_00;\n          SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_);\n        }\n        else {\n          if (rel_type != 9) goto LAB_002c81f5;\n          p_Var31 = (_List_node_base *)operator_new(0x40);\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n          SVar27 = STATUS_OKAY;\n          p_Var31[1]._M_next = (_List_node_base *)view;\n          p_Var31[1]._M_prev = (_List_node_base *)this_00;\n          p_Var31[2]._M_next = (_List_node_base *)psymval;\n          *(uint *)&p_Var31[2]._M_prev = local_c8;\n          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;\n          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n          *(Mips_address *)&p_Var31[3]._M_prev = address;\n          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;\n          std::__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n          _DAT_0067db50 = _DAT_0067db50 + 1;\n        }" statement_identifier : (if_statement "if (rel_type == 4) {\n          sVar56 = (size_t)local_f8;\n          object = (_List_node_base **)this_00;\n          SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_);\n        }\n        else {\n          if (rel_type != 9) goto LAB_002c81f5;\n          p_Var31 = (_List_node_base *)operator_new(0x40);\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n          SVar27 = STATUS_OKAY;\n          p_Var31[1]._M_next = (_List_node_base *)view;\n          p_Var31[1]._M_prev = (_List_node_base *)this_00;\n          p_Var31[2]._M_next = (_List_node_base *)psymval;\n          *(uint *)&p_Var31[2]._M_prev = local_c8;\n          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;\n          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n          *(Mips_address *)&p_Var31[3]._M_prev = address;\n          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;\n          std::__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n          _DAT_0067db50 = _DAT_0067db50 + 1;\n        }" if (parenthesized_expression "(rel_type == 4)" ( (binary_expression "rel_type == 4" identifier == number_literal) )) (compound_statement "{\n          sVar56 = (size_t)local_f8;\n          object = (_List_node_base **)this_00;\n          SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_);\n        }" { (expression_statement "sVar56 = (size_t)local_f8;" (assignment_expression "sVar56 = (size_t)local_f8" identifier = (cast_expression "(size_t)local_f8" ( (type_descriptor "size_t" primitive_type) ) identifier)) ;) (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_);" (comma_expression "SVar27 = Mips_relocate_functions<32,_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_)" (assignment_expression "SVar27 = Mips_relocate_functions<32" identifier = (binary_expression "Mips_relocate_functions<32" identifier < number_literal)) , (binary_expression "_true>::do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_)" identifier > (ERROR "::" : :) (call_expression "do_relhi16\n                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_)" identifier (argument_list "(view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_)" ( identifier , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_)" ( (comma_expression "Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (comma_expression "_true> *)this_00,psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (comma_expression "psymval,local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_" identifier , (comma_expression "local_c8,address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_" identifier , (comma_expression "address,\n                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_" identifier , (comma_expression "local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_" (field_expression "local_f8._0_1_" identifier . field_identifier) , (comma_expression "uVar21,bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_" identifier , (comma_expression "bVar61,0,target,(bool)cVar47,\n                              &this->calculated_value_" identifier , (comma_expression "0,target,(bool)cVar47,\n                              &this->calculated_value_" number_literal , (comma_expression "target,(bool)cVar47,\n                              &this->calculated_value_" identifier , (comma_expression "(bool)cVar47,\n                              &this->calculated_value_" (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) , (pointer_expression "&this->calculated_value_" & (field_expression "this->calculated_value_" identifier -> field_identifier))))))))))))) )) ))))) ;) }) (else_clause "else {\n          if (rel_type != 9) goto LAB_002c81f5;\n          p_Var31 = (_List_node_base *)operator_new(0x40);\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n          SVar27 = STATUS_OKAY;\n          p_Var31[1]._M_next = (_List_node_base *)view;\n          p_Var31[1]._M_prev = (_List_node_base *)this_00;\n          p_Var31[2]._M_next = (_List_node_base *)psymval;\n          *(uint *)&p_Var31[2]._M_prev = local_c8;\n          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;\n          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n          *(Mips_address *)&p_Var31[3]._M_prev = address;\n          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;\n          std::__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n          _DAT_0067db50 = _DAT_0067db50 + 1;\n        }" else (compound_statement "{\n          if (rel_type != 9) goto LAB_002c81f5;\n          p_Var31 = (_List_node_base *)operator_new(0x40);\n          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;\n          SVar27 = STATUS_OKAY;\n          p_Var31[1]._M_next = (_List_node_base *)view;\n          p_Var31[1]._M_prev = (_List_node_base *)this_00;\n          p_Var31[2]._M_next = (_List_node_base *)psymval;\n          *(uint *)&p_Var31[2]._M_prev = local_c8;\n          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;\n          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n          *(Mips_address *)&p_Var31[3]._M_prev = address;\n          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;\n          std::__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);\n          _DAT_0067db50 = _DAT_0067db50 + 1;\n        }" { (if_statement "if (rel_type != 9) goto LAB_002c81f5;" if (parenthesized_expression "(rel_type != 9)" ( (binary_expression "rel_type != 9" identifier != number_literal) )) (goto_statement "goto LAB_002c81f5;" goto statement_identifier ;)) (expression_statement "p_Var31 = (_List_node_base *)operator_new(0x40);" (assignment_expression "p_Var31 = (_List_node_base *)operator_new(0x40)" identifier = (cast_expression "(_List_node_base *)operator_new(0x40)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "operator_new(0x40)" identifier (argument_list "(0x40)" ( number_literal ))))) ;) (expression_statement "object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;" (comma_expression "object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs" (binary_expression "object = &(anonymous_namespace)::Mips_relocate_functions<32" (assignment_expression "object = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (binary_expression "true>::hi16_relocs" true > (ERROR "::" : :) identifier)) ;) (expression_statement "SVar27 = STATUS_OKAY;" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ;) (expression_statement "p_Var31[1]._M_next = (_List_node_base *)view;" (assignment_expression "p_Var31[1]._M_next = (_List_node_base *)view" (field_expression "p_Var31[1]._M_next" (subscript_expression "p_Var31[1]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(_List_node_base *)view" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "p_Var31[1]._M_prev = (_List_node_base *)this_00;" (assignment_expression "p_Var31[1]._M_prev = (_List_node_base *)this_00" (field_expression "p_Var31[1]._M_prev" (subscript_expression "p_Var31[1]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(_List_node_base *)this_00" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "p_Var31[2]._M_next = (_List_node_base *)psymval;" (assignment_expression "p_Var31[2]._M_next = (_List_node_base *)psymval" (field_expression "p_Var31[2]._M_next" (subscript_expression "p_Var31[2]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(_List_node_base *)psymval" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "*(uint *)&p_Var31[2]._M_prev = local_c8;" (assignment_expression "*(uint *)&p_Var31[2]._M_prev = local_c8" (pointer_expression "*(uint *)&p_Var31[2]._M_prev" * (cast_expression "(uint *)&p_Var31[2]._M_prev" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&p_Var31[2]._M_prev" & (field_expression "p_Var31[2]._M_prev" (subscript_expression "p_Var31[2]" identifier [ number_literal ]) . field_identifier)))) = identifier) ;) (expression_statement "*(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;" (assignment_expression "*(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21" (pointer_expression "*(uint *)((long)&p_Var31[2]._M_prev + 4)" * (cast_expression "(uint *)((long)&p_Var31[2]._M_prev + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&p_Var31[2]._M_prev + 4)" ( (binary_expression "(long)&p_Var31[2]._M_prev + 4" (cast_expression "(long)&p_Var31[2]._M_prev" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&p_Var31[2]._M_prev" & (field_expression "p_Var31[2]._M_prev" (subscript_expression "p_Var31[2]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "*(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;" (assignment_expression "*(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14" (pointer_expression "*(_Rb_tree_color *)&p_Var31[3]._M_next" * (cast_expression "(_Rb_tree_color *)&p_Var31[3]._M_next" ( (type_descriptor "_Rb_tree_color *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&p_Var31[3]._M_next" & (field_expression "p_Var31[3]._M_next" (subscript_expression "p_Var31[3]" identifier [ number_literal ]) . field_identifier)))) = identifier) ;) (expression_statement "*(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;" (assignment_expression "*(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61" (pointer_expression "*(bool *)((long)&p_Var31[3]._M_next + 4)" * (cast_expression "(bool *)((long)&p_Var31[3]._M_next + 4)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&p_Var31[3]._M_next + 4)" ( (binary_expression "(long)&p_Var31[3]._M_next + 4" (cast_expression "(long)&p_Var31[3]._M_next" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&p_Var31[3]._M_next" & (field_expression "p_Var31[3]._M_next" (subscript_expression "p_Var31[3]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "*(Mips_address *)&p_Var31[3]._M_prev = address;" (assignment_expression "*(Mips_address *)&p_Var31[3]._M_prev = address" (pointer_expression "*(Mips_address *)&p_Var31[3]._M_prev" * (cast_expression "(Mips_address *)&p_Var31[3]._M_prev" ( (type_descriptor "Mips_address *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&p_Var31[3]._M_prev" & (field_expression "p_Var31[3]._M_prev" (subscript_expression "p_Var31[3]" identifier [ number_literal ]) . field_identifier)))) = identifier) ;) (expression_statement "*(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;" (assignment_expression "*(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_" (pointer_expression "*(bool *)((long)&p_Var31[3]._M_prev + 4)" * (cast_expression "(bool *)((long)&p_Var31[3]._M_prev + 4)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&p_Var31[3]._M_prev + 4)" ( (binary_expression "(long)&p_Var31[3]._M_prev + 4" (cast_expression "(long)&p_Var31[3]._M_prev" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&p_Var31[3]._M_prev" & (field_expression "p_Var31[3]._M_prev" (subscript_expression "p_Var31[3]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))) = (field_expression "local_f8._0_1_" identifier . field_identifier)) ;) (labeled_statement "std::__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);" statement_identifier : (ERROR ":" :) (labeled_statement "__detail::_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);" statement_identifier : (ERROR ":" :) (labeled_statement "_List_node_base::_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);" statement_identifier : (ERROR ":" :) (expression_statement "_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);" (call_expression "_M_hook\n                    (p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)" identifier (argument_list "(p_Var31,(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)" ( identifier , (binary_expression "(_List_node_base *)\n                             &(anonymous_namespace)::Mips_relocate_functions<32" (cast_expression "(_List_node_base *)\n                             &(anonymous_namespace)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (binary_expression "true>::hi16_relocs" true > (ERROR "::" : :) identifier) ))) ;)))) (expression_statement "_DAT_0067db50 = _DAT_0067db50 + 1;" (assignment_expression "_DAT_0067db50 = _DAT_0067db50 + 1" identifier = (binary_expression "_DAT_0067db50 + 1" identifier + number_literal)) ;) })))) }) (else_clause "else {\n        if (gsym != (Sized_symbol<32> *)0x0) {\nLAB_002c6275:\n          if ((char)gsym[1].value_ != '\0') {\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }\n        }\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        *(Value *)(pMVar51->got_view_ + local_e8) =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }" else (compound_statement "{\n        if (gsym != (Sized_symbol<32> *)0x0) {\nLAB_002c6275:\n          if ((char)gsym[1].value_ != '\0') {\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }\n        }\n        object = (_List_node_base **)this_00;\n        VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n        *(Value *)(pMVar51->got_view_ + local_e8) =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;\n      }" { (if_statement "if (gsym != (Sized_symbol<32> *)0x0) {\nLAB_002c6275:\n          if ((char)gsym[1].value_ != '\0') {\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }\n        }" if (parenthesized_expression "(gsym != (Sized_symbol<32> *)0x0)" ( (binary_expression "gsym != (Sized_symbol<32> *)0x0)" identifier != (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) )) (compound_statement "{\nLAB_002c6275:\n          if ((char)gsym[1].value_ != '\0') {\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }\n        }" { (labeled_statement "LAB_002c6275:\n          if ((char)gsym[1].value_ != '\0') {\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }" statement_identifier : (if_statement "if ((char)gsym[1].value_ != '\0') {\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }" if (parenthesized_expression "((char)gsym[1].value_ != '\0')" ( (binary_expression "(char)gsym[1].value_ != '\0'" (cast_expression "(char)gsym[1].value_" ( (type_descriptor "char" primitive_type) ) (field_expression "gsym[1].value_" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier)) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            object = (_List_node_base **)this_00;\n            pMVar53 = (Mips_relobj<32,_false> *)psymval;\n            VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);\n            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }\n            goto LAB_002c8347;\n          }" { (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)psymval;" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)psymval" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)psymval" ( (comma_expression "Mips_relobj<32,_false> *)psymval" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)psymval" identifier > (pointer_expression "*)psymval" * (ERROR ")" )) identifier))) ))) ;) (expression_statement "VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true>\n                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0)" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true" (binary_expression "VVar20 = gold::Symbol_value<32>::value" (binary_expression "VVar20 = gold::Symbol_value<32" (assignment_expression "VVar20 = gold" identifier = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,0)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , number_literal)) ))) ))) ;) (if_statement "if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }" if (parenthesized_expression "(*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2)" ( (binary_expression "*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2" (pointer_expression "*(int *)((long)&gsym[1].super_Symbol.u1_ + 4)" * (cast_expression "(int *)((long)&gsym[1].super_Symbol.u1_ + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&gsym[1].super_Symbol.u1_ + 4)" ( (binary_expression "(long)&gsym[1].super_Symbol.u1_ + 4" (cast_expression "(long)&gsym[1].super_Symbol.u1_" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&gsym[1].super_Symbol.u1_" & (field_expression "gsym[1].super_Symbol.u1_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) + number_literal) )))) != number_literal) )) (compound_statement "{\n              pMVar30 = pMVar51->primary_got_;\n              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }\n              uVar21 = (gsym->super_Symbol).dynsym_index_;\n              if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }\n              goto LAB_002c8342;\n            }" { (expression_statement "pMVar30 = pMVar51->primary_got_;" (assignment_expression "pMVar30 = pMVar51->primary_got_" identifier = (field_expression "pMVar51->primary_got_" identifier -> field_identifier)) ;) (if_statement "if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }\n              else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }" if (parenthesized_expression "(pMVar30 == (Mips_got_info<32,_true> *)0x0)" ( (binary_expression "pMVar30 == (Mips_got_info<32,_true> *)0x0)" identifier == (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\n                iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;\n              }" { (expression_statement "iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_;" (assignment_expression "iVar25 = pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_" identifier = (binary_expression "pMVar51->master_got_info_->page_gotno_ +\n                         pMVar51->master_got_info_->local_gotno_" (field_expression "pMVar51->master_got_info_->page_gotno_" (field_expression "pMVar51->master_got_info_" identifier -> field_identifier) -> field_identifier) + (field_expression "pMVar51->master_got_info_->local_gotno_" (field_expression "pMVar51->master_got_info_" identifier -> field_identifier) -> field_identifier))) ;) }) (else_clause "else {\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }" else (compound_statement "{\n                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;\n              }" { (expression_statement "iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;" (assignment_expression "iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_" identifier = (binary_expression "pMVar30->page_gotno_ + pMVar30->local_gotno_" (field_expression "pMVar30->page_gotno_" identifier -> field_identifier) + (field_expression "pMVar30->local_gotno_" identifier -> field_identifier))) ;) }))) (expression_statement "uVar21 = (gsym->super_Symbol).dynsym_index_;" (assignment_expression "uVar21 = (gsym->super_Symbol).dynsym_index_" identifier = (field_expression "(gsym->super_Symbol).dynsym_index_" (parenthesized_expression "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if (uVar21 != 0) {\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }" if (parenthesized_expression "(uVar21 != 0)" ( (binary_expression "uVar21 != 0" identifier != number_literal) )) (compound_statement "{\n                *(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;\n                break;\n              }" { (expression_statement "*(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18;" (assignment_expression "*(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)) =\n                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18" (pointer_expression "*(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3))" * (cast_expression "(Value *)(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3))" ( (type_descriptor "Value *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3))" ( (binary_expression "pMVar51->got_view_ +\n                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)" (field_expression "pMVar51->got_view_" identifier -> field_identifier) + (parenthesized_expression "(((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3)" ( (binary_expression "((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20\n                          >> 3" (binary_expression "((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20" (parenthesized_expression "((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2)" ( (binary_expression "(uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2" (binary_expression "(uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25" (parenthesized_expression "(uVar21 - pMVar51->first_global_got_dynsym_index_)" ( (binary_expression "uVar21 - pMVar51->first_global_got_dynsym_index_" identifier - (field_expression "pMVar51->first_global_got_dynsym_index_" identifier -> field_identifier)) )) + identifier) + number_literal) )) * number_literal) >> number_literal) ))) )))) = (binary_expression "VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |\n                     VVar20 << 0x18" (binary_expression "VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8" (binary_expression "VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8" (binary_expression "VVar20 >> 0x18" identifier >> number_literal) | (binary_expression "(VVar20 & 0xff0000) >> 8" (parenthesized_expression "(VVar20 & 0xff0000)" ( (binary_expression "VVar20 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(VVar20 & 0xff00) << 8" (parenthesized_expression "(VVar20 & 0xff00)" ( (binary_expression "VVar20 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "VVar20 << 0x18" identifier << number_literal))) ;) (break_statement "break;" break ;) })) (goto_statement "goto LAB_002c8342;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c8347;" goto statement_identifier ;) }))) })) (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true>\n                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0)" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true" (binary_expression "VVar20 = gold::Symbol_value<32>::value" (binary_expression "VVar20 = gold::Symbol_value<32" (assignment_expression "VVar20 = gold" identifier = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,0)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , number_literal)) ))) ))) ;) (expression_statement "*(Value *)(pMVar51->got_view_ + local_e8) =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;" (assignment_expression "*(Value *)(pMVar51->got_view_ + local_e8) =\n             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18" (pointer_expression "*(Value *)(pMVar51->got_view_ + local_e8)" * (cast_expression "(Value *)(pMVar51->got_view_ + local_e8)" ( (type_descriptor "Value *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pMVar51->got_view_ + local_e8)" ( (binary_expression "pMVar51->got_view_ + local_e8" (field_expression "pMVar51->got_view_" identifier -> field_identifier) + identifier) )))) = (binary_expression "VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18" (binary_expression "VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8" (binary_expression "VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8" (binary_expression "VVar20 >> 0x18" identifier >> number_literal) | (binary_expression "(VVar20 & 0xff0000) >> 8" (parenthesized_expression "(VVar20 & 0xff0000)" ( (binary_expression "VVar20 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(VVar20 & 0xff00) << 8" (parenthesized_expression "(VVar20 & 0xff00)" ( (binary_expression "VVar20 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "VVar20 << 0x18" identifier << number_literal))) ;) }))) }) (ERROR "break;\n  case 0x17:\n  case 0x1f:\n  case 0x95:\n  case 0x9a:\n    bVar61 = false;\nswitchD_002c5379_caseD_17:\n    pMVar53 = (Mips_relobj<32,_false> *" break ; case number_literal : case number_literal : case number_literal : case number_literal : identifier = false ; identifier : identifier = ( identifier < number_literal , identifier > *) )) (ERROR "target" identifier) -> field_identifier) (ERROR ";\n    if" ; if) (argument_list "(gsym == (Sized_symbol<32> *)0x0) {\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);\n        goto LAB_002c5ddf;\n      }\nLAB_002c8369:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c836e:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8373;\n    }\n    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n      object = (_List_node_base **)gsym;\n      local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                            (Mips_relobj<32,_true> *)this_00);\nLAB_002c5ddf:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)local_e8;\n        uVar49 = Mips_output_data_got<32,_true>::gp_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                            (Mips_relobj<32,_true> *)this_00);\n        if (this->calculate_only_ != false) goto LAB_002c67b0;\n        SVar27 = STATUS_OKAY;\n        uVar23 = *(uint *)view;\n        uVar49 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;\n        *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n        goto LAB_002c624f;\n      }\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n    }\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53)" ( (ERROR "gsym == (Sized_symbol<32> *)0x0) {\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);\n        goto LAB_002c5ddf;\n      }\nLAB_002c8369:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c836e:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8373;\n    }\n    if" (binary_expression "gsym == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) (compound_statement "{\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);\n        goto LAB_002c5ddf;\n      }\nLAB_002c8369:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\nLAB_002c836e:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8373;\n    }" { (if_statement "if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)_Var14;\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);\n        goto LAB_002c5ddf;\n      }" if (parenthesized_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\n        object = (_List_node_base **)(ulong)_Var14;\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);\n        goto LAB_002c5ddf;\n      }" { (expression_statement "object = (_List_node_base **)(ulong)_Var14;" (assignment_expression "object = (_List_node_base **)(ulong)_Var14" identifier = (cast_expression "(_List_node_base **)(ulong)_Var14" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)_Var14" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8);" (assignment_expression "local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8)" identifier = (parenthesized_expression "(*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8)" ( (pointer_expression "*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8)" * (call_expression "(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,object,0,(long)(int)local_c8)" (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])" ( (subscript_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c]" (field_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object" (field_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(this_00->super_Sized_relobj_file<32,_false>)" ( (comma_expression "this_00->super_Sized_relobj_file<32,_false" (binary_expression "this_00->super_Sized_relobj_file<32" (field_expression "this_00->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) [ number_literal ]) )) (argument_list "(this_00,object,0,(long)(int)local_c8)" ( identifier , identifier , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ))) ;) (goto_statement "goto LAB_002c5ddf;" goto statement_identifier ;) })) (labeled_statement "LAB_002c8369:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);" statement_identifier : (expression_statement "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);" (comma_expression "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)pMVar53)" identifier > (ERROR "::" : :) (call_expression "got_section((Target_mips<32,_true> *)pMVar53)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53)" ( (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ))))) ;)) (labeled_statement "LAB_002c836e:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);" statement_identifier : (expression_statement "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);" (comma_expression "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)pMVar53)" identifier > (ERROR "::" : :) (call_expression "got_section((Target_mips<32,_true> *)pMVar53)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53)" ( (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ))))) ;)) (goto_statement "goto LAB_002c8373;" goto statement_identifier ;) }) if) (parenthesized_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n      object = (_List_node_base **)gsym;\n      local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                            (Mips_relobj<32,_true> *)this_00);\nLAB_002c5ddf:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)local_e8;\n        uVar49 = Mips_output_data_got<32,_true>::gp_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                            (Mips_relobj<32,_true> *)this_00);\n        if (this->calculate_only_ != false) goto LAB_002c67b0;\n        SVar27 = STATUS_OKAY;\n        uVar23 = *(uint *)view;\n        uVar49 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;\n        *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n        goto LAB_002c624f;\n      }\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n    }\n    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)" ( (ERROR "pMVar53 != (Mips_relobj<32,_false> *)0x0)" (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )))) (compound_statement "{\n      object = (_List_node_base **)gsym;\n      local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                            (Mips_relobj<32,_true> *)this_00);\nLAB_002c5ddf:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)local_e8;\n        uVar49 = Mips_output_data_got<32,_true>::gp_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                            (Mips_relobj<32,_true> *)this_00);\n        if (this->calculate_only_ != false) goto LAB_002c67b0;\n        SVar27 = STATUS_OKAY;\n        uVar23 = *(uint *)view;\n        uVar49 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;\n        *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n        goto LAB_002c624f;\n      }\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n    }" { (expression_statement "object = (_List_node_base **)gsym;" (assignment_expression "object = (_List_node_base **)gsym" identifier = (cast_expression "(_List_node_base **)gsym" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                            (Mips_relobj<32,_true> *)this_00);" (comma_expression "local_e8 = Mips_output_data_got<32,_true>::got_offset" (assignment_expression "local_e8 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , (binary_expression "_true>::got_offset" identifier > (ERROR "::" : :) identifier)) (ERROR "((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                            (Mips_relobj<32,_true> *)this_00)" ( ( (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                            (Mips_relobj<32,_true> *)this_00)" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,&gsym->super_Symbol,0,\n                            (Mips_relobj<32,_true> *)this_00)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "&gsym->super_Symbol,0,\n                            (Mips_relobj<32,_true> *)this_00)" (pointer_expression "&gsym->super_Symbol" & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) , (comma_expression "0,\n                            (Mips_relobj<32,_true> *)this_00)" number_literal , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) ))))))) ;) (labeled_statement "LAB_002c5ddf:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;" statement_identifier : (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)target->got_;" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)target->got_" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)target->got_" ( (comma_expression "Mips_relobj<32,_false> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ))) ;)) (if_statement "if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        object = (_List_node_base **)(ulong)local_e8;\n        uVar49 = Mips_output_data_got<32,_true>::gp_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                            (Mips_relobj<32,_true> *)this_00);\n        if (this->calculate_only_ != false) goto LAB_002c67b0;\n        SVar27 = STATUS_OKAY;\n        uVar23 = *(uint *)view;\n        uVar49 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;\n        *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n        goto LAB_002c624f;\n      }" if (parenthesized_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\n        object = (_List_node_base **)(ulong)local_e8;\n        uVar49 = Mips_output_data_got<32,_true>::gp_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                            (Mips_relobj<32,_true> *)this_00);\n        if (this->calculate_only_ != false) goto LAB_002c67b0;\n        SVar27 = STATUS_OKAY;\n        uVar23 = *(uint *)view;\n        uVar49 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;\n        *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;\n        goto LAB_002c624f;\n      }" { (expression_statement "object = (_List_node_base **)(ulong)local_e8;" (assignment_expression "object = (_List_node_base **)(ulong)local_e8" identifier = (cast_expression "(_List_node_base **)(ulong)local_e8" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)local_e8" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "uVar49 = Mips_output_data_got<32,_true>::gp_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                            (Mips_relobj<32,_true> *)this_00);" (comma_expression "uVar49 = Mips_output_data_got<32,_true>::gp_offset" (assignment_expression "uVar49 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , (binary_expression "_true>::gp_offset" identifier > (ERROR "::" : :) identifier)) (ERROR "((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                            (Mips_relobj<32,_true> *)this_00)" ( ( (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                            (Mips_relobj<32,_true> *)this_00)" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,local_e8,\n                            (Mips_relobj<32,_true> *)this_00)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "local_e8,\n                            (Mips_relobj<32,_true> *)this_00)" identifier , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) )))))) ;) (if_statement "if (this->calculate_only_ != false) goto LAB_002c67b0;" if (parenthesized_expression "(this->calculate_only_ != false)" ( (binary_expression "this->calculate_only_ != false" (field_expression "this->calculate_only_" identifier -> field_identifier) != false) )) (goto_statement "goto LAB_002c67b0;" goto statement_identifier ;)) (expression_statement "SVar27 = STATUS_OKAY;" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ;) (expression_statement "uVar23 = *(uint *)view;" (assignment_expression "uVar23 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar49 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;" (assignment_expression "uVar49 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49" identifier = (binary_expression "(uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49" (parenthesized_expression "(uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8)" ( (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8" (binary_expression "uVar23 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar23 & 0xff0000) >> 8" (parenthesized_expression "(uVar23 & 0xff0000)" ( (binary_expression "uVar23 & 0xff0000" identifier & number_literal) )) >> number_literal)) )) ^ identifier)) ;) (expression_statement "*(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;" (assignment_expression "*(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23" (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23" (parenthesized_expression "((uVar49 & 0xff00) << 8 | uVar49 << 0x18)" ( (binary_expression "(uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar49 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (goto_statement "goto LAB_002c624f;" goto statement_identifier ;) })) (expression_statement "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);" (comma_expression "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)0x0)" identifier > (ERROR "::" : :) (call_expression "got_section((Target_mips<32,_true> *)0x0)" identifier (argument_list "((Target_mips<32,_true> *)0x0)" ( (parenthesized_expression "(Target_mips<32,_true> *)0x0)" ( (comma_expression "Target_mips<32,_true> *)0x0" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) ))))) ;) }) (ERROR "Target_mips<32,_true>::got_section((Target_mips<32,_true> *" identifier < number_literal , identifier > : : identifier ( ( identifier < number_literal , identifier > *) )) (ERROR "pMVar53" identifier) ))) (ERROR ";\nLAB_002c826c:\n    Target_mips" ; identifier : identifier) < number_literal) , identifier > (ERROR "::" : :) identifier ( (ERROR "(Target_mips<32,_true> *)pMVar53);\nLAB_002c8271:" (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ; identifier :) (binary_expression "Target_mips<32" identifier < number_literal) , identifier > (ERROR "::" : :) identifier ( (ERROR "(Target_mips<32,_true> *)pMVar53);\nLAB_002c8276:" (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ; identifier :) (binary_expression "Target_mips<32" identifier < number_literal) , identifier > (ERROR "::" : :) identifier ( (ERROR "(Target_mips<32,_true> *)pMVar53);\nLAB_002c827b:" (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ; identifier :) identifier = ( (ERROR "Target_mips<32,_true> *)object;" (comma_expression "Target_mips<32,_true> *)object" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)object" identifier > (pointer_expression "*)object" * (ERROR ")" )) identifier))) ;) (binary_expression "Target_mips<32" identifier < number_literal) , identifier > (ERROR "::" : :) identifier ( (ERROR "(Target_mips<32,_true> *)pMVar53);\nLAB_002c8280:\n    value = (Mips_address)target;" (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ; identifier : (assignment_expression "value = (Mips_address)target" identifier = (cast_expression "(Mips_address)target" ( (type_descriptor "Mips_address" type_identifier) ) identifier)) ;) (binary_expression "Target_mips<32" identifier < number_literal) , identifier > (ERROR "::" : :) identifier ( (ERROR "(Target_mips<32,_true> *)pMVar53);\n    pMVar45 = extraout_RDX_02;\nLAB_002c8285:" (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ; (assignment_expression "pMVar45 = extraout_RDX_02" identifier = identifier) ; identifier :) (binary_expression "Mips_output_data_got<32" identifier < number_literal) , identifier > (ERROR "::" : :) identifier ( (ERROR "(Mips_output_data_got<32,_true> *)pMVar53,value,pMVar45);\nLAB_002c828a:" (parenthesized_expression "(Mips_output_data_got<32,_true> *)pMVar53,value,pMVar45)" ( (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,value,pMVar45" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,value,pMVar45" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "value,pMVar45" identifier , identifier))) )) ; identifier :) comment (ERROR "gold::do_gold_unreachable("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n  case 0x18:\n  case 0x96:\n    bVar61 = false;\nLAB_002c6b1a:\n    VVar20 = -(uint)local_c0;\nLAB_002c6b22:\n    object = (_List_node_base **)this_00;\n    uVar23 = gold::" identifier : : (call_expression "do_gold_unreachable("../../gold/mips.cc",0x86a,"tls_ldm_offset")" identifier (argument_list "("../../gold/mips.cc",0x86a,"tls_ldm_offset")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""tls_ldm_offset"" " string_content ") ))) ; case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "VVar20 = -(uint)local_c0" identifier = (unary_expression "-(uint)local_c0" - (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ; identifier : (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "uVar23 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n    if (cVar47 != '\0') goto LAB_002c59a8;\n    uVar43 = (ulong)uVar23;\n    SVar27 = STATUS_OKAY;\n    *(ulong *)view =\n         (uVar43 & 0xff000000) << 8 | (uVar43 & 0xff0000) << 0x18 | (uVar43 & 0xff00) << 0x28 |\n         uVar43 << 0x38;\n    break;\n  case 0x1c:\n  case 0x97:\n    bVar61 = false;\nLAB_002c59bd:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,VVar20)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,VVar20" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,VVar20" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ; if (parenthesized_expression "(cVar47 != '\0')" ( (binary_expression "cVar47 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) identifier identifier ; (assignment_expression "uVar43 = (ulong)uVar23" identifier = (cast_expression "(ulong)uVar23" ( (type_descriptor "ulong" type_identifier) ) identifier)) ; (binary_expression "SVar27 = STATUS_OKAY;\n    *(ulong *)view =\n         (uVar43 & 0xff000000) << 8 | (uVar43 & 0xff0000) << 0x18 | (uVar43 & 0xff00) << 0x28 |\n         uVar43 << 0x38" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) (ERROR ";" ;) * (cast_expression "(ulong *)view =\n         (uVar43 & 0xff000000) << 8 | (uVar43 & 0xff0000) << 0x18 | (uVar43 & 0xff00) << 0x28 |\n         uVar43 << 0x38" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "view =\n         (uVar43 & 0xff000000) << 8 | (uVar43 & 0xff0000) << 0x18 | (uVar43 & 0xff00) << 0x28 |\n         uVar43 << 0x38" identifier = (binary_expression "(uVar43 & 0xff000000) << 8 | (uVar43 & 0xff0000) << 0x18 | (uVar43 & 0xff00) << 0x28 |\n         uVar43 << 0x38" (binary_expression "(uVar43 & 0xff000000) << 8 | (uVar43 & 0xff0000) << 0x18 | (uVar43 & 0xff00) << 0x28" (binary_expression "(uVar43 & 0xff000000) << 8 | (uVar43 & 0xff0000) << 0x18" (binary_expression "(uVar43 & 0xff000000) << 8" (parenthesized_expression "(uVar43 & 0xff000000)" ( (binary_expression "uVar43 & 0xff000000" identifier & number_literal) )) << number_literal) | (binary_expression "(uVar43 & 0xff0000) << 0x18" (parenthesized_expression "(uVar43 & 0xff0000)" ( (binary_expression "uVar43 & 0xff0000" identifier & number_literal) )) << number_literal)) | (binary_expression "(uVar43 & 0xff00) << 0x28" (parenthesized_expression "(uVar43 & 0xff00)" ( (binary_expression "uVar43 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar43 << 0x38" identifier << number_literal))))) ; break ; case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar23 = (uVar21 & 0xff0000) >> 8" identifier = (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) ; (assignment_expression "uVar49 = uVar21 >> 0x18 | uVar23" identifier = (binary_expression "uVar21 >> 0x18 | uVar23" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | identifier)) ; (call_expression "local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0))" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) (ERROR ";\n    if" ; if) (argument_list "((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0))" ( (binary_expression "(bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)" (parenthesized_expression "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) )) && (parenthesized_expression "(local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)" ( (comma_expression "local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0" (assignment_expression "local_c0._0_4_ = uVar49 - 0x10000" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar49 - 0x10000" identifier - number_literal)) , (binary_expression "(uVar23 & 0x8000) == 0" (parenthesized_expression "(uVar23 & 0x8000)" ( (binary_expression "uVar23 & 0x8000" identifier & number_literal) )) == number_literal)) ))) ))) (compound_statement "{\n      local_c0._0_4_ = uVar49;\n    }" { (expression_statement "local_c0._0_4_ = uVar49;" (assignment_expression "local_c0._0_4_ = uVar49" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = (uint)((ulong)VVar20 + 0x80008000 >> 0x20);\n    goto joined_r0x002c59a3;\n  case 0x1d:\n  case 0x98:\n    bVar61 = false;\nLAB_002c6b55:\n    uVar23 = *(uint *)view;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar49 = (uVar23 & 0xff0000) >> 8;\n      uVar21 = uVar23 >> 0x18 | uVar49;\n      local_c0._0_4_ = uVar21 - 0x10000;\n      if ((uVar49 & 0x8000) == 0) {\n        local_c0._0_4_ = uVar21;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (assignment_expression "uVar23 = (uint)((ulong)VVar20 + 0x80008000 >> 0x20)" identifier = (call_expression "(uint)((ulong)VVar20 + 0x80008000 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulong)VVar20 + 0x80008000 >> 0x20)" ( (binary_expression "(ulong)VVar20 + 0x80008000 >> 0x20" (binary_expression "(ulong)VVar20 + 0x80008000" (cast_expression "(ulong)VVar20" ( (type_descriptor "ulong" type_identifier) ) identifier) + number_literal) >> number_literal) )))) ; goto identifier ; case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar23 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (call_expression "local_c0._0_4_ = local_c8;\n    if (bVar61 != false)" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) ))) (compound_statement "{\n      uVar49 = (uVar23 & 0xff0000) >> 8;\n      uVar21 = uVar23 >> 0x18 | uVar49;\n      local_c0._0_4_ = uVar21 - 0x10000;\n      if ((uVar49 & 0x8000) == 0) {\n        local_c0._0_4_ = uVar21;\n      }\n    }" { (expression_statement "uVar49 = (uVar23 & 0xff0000) >> 8;" (assignment_expression "uVar49 = (uVar23 & 0xff0000) >> 8" identifier = (binary_expression "(uVar23 & 0xff0000) >> 8" (parenthesized_expression "(uVar23 & 0xff0000)" ( (binary_expression "uVar23 & 0xff0000" identifier & number_literal) )) >> number_literal)) ;) (expression_statement "uVar21 = uVar23 >> 0x18 | uVar49;" (assignment_expression "uVar21 = uVar23 >> 0x18 | uVar49" identifier = (binary_expression "uVar23 >> 0x18 | uVar49" (binary_expression "uVar23 >> 0x18" identifier >> number_literal) | identifier)) ;) (expression_statement "local_c0._0_4_ = uVar21 - 0x10000;" (assignment_expression "local_c0._0_4_ = uVar21 - 0x10000" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar21 - 0x10000" identifier - number_literal)) ;) (if_statement "if ((uVar49 & 0x8000) == 0) {\n        local_c0._0_4_ = uVar21;\n      }" if (parenthesized_expression "((uVar49 & 0x8000) == 0)" ( (binary_expression "(uVar49 & 0x8000) == 0" (parenthesized_expression "(uVar49 & 0x8000)" ( (binary_expression "uVar49 & 0x8000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        local_c0._0_4_ = uVar21;\n      }" { (expression_statement "local_c0._0_4_ = uVar21;" (assignment_expression "local_c0._0_4_ = uVar21" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) })) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; identifier : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    if (!bVar62 || !bVar63) {\n      uVar23 = uVar23 & 0xffff;\n      pRVar50 = (Relocate *)view;\n      goto LAB_002c5c85;\n    }\n    SVar27 = STATUS_OKAY;\n    this->calculated_value_ = 0;\n    break;\n  case 0x25:\n  case 0x9c:\n    bVar61 = false;" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; if (parenthesized_expression "(!bVar62 || !bVar63)" ( (binary_expression "!bVar62 || !bVar63" (unary_expression "!bVar62" ! identifier) || (unary_expression "!bVar63" ! identifier)) )) (compound_statement "{\n      uVar23 = uVar23 & 0xffff;\n      pRVar50 = (Relocate *)view;\n      goto LAB_002c5c85;\n    }" { (expression_statement "uVar23 = uVar23 & 0xffff;" (assignment_expression "uVar23 = uVar23 & 0xffff" identifier = (binary_expression "uVar23 & 0xffff" identifier & number_literal)) ;) (expression_statement "pRVar50 = (Relocate *)view;" (assignment_expression "pRVar50 = (Relocate *)view" identifier = (cast_expression "(Relocate *)view" ( (type_descriptor "Relocate *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (goto_statement "goto LAB_002c5c85;" goto statement_identifier ;) }) (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ; (assignment_expression "this->calculated_value_ = 0" (field_expression "this->calculated_value_" identifier -> field_identifier) = number_literal) ; break ; case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ;) identifier (ERROR ":\n    if" : if) ( (ERROR "gsym != (Sized_symbol<32> *)0x0) {\n      bVar62 = (gsym->super_Symbol).dynsym_index_ != 0;\n      object = (_List_node_base **)(ulong)bVar62;\n      bVar62 = symbol_refs_local(&gsym->super_Symbol,bVar62,true);\n      if (!bVar62) break;\n      cVar47 = this->calculate_only_;\n    }\n    VVar20 = 0;\n    if (bVar61 == false) {\n      VVar20 = local_c8;\n    }\n    uVar49 = *(uint *)view;\n    uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    uVar49 = uVar23;\n    if (((uVar21 == 0x25) && (local_e3 != 1)) && ((uVar23 == 0x3200008 || (uVar23 == 0x320f809)))) {\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      if ((VVar20 - address) + 0x1fffc < 0x40000) {\n        uVar21 = (VVar20 - address) - 4 >> 2 & 0xffff;\n        uVar49 = uVar21 | 0x10000000;\n        if (uVar23 != 0x3200008) {\n          uVar49 = uVar21 | 0x4110000;\n        }\n      }\n    }\n    if (cVar47 == '\0') {\n      SVar27 = STATUS_OKAY;\n      *(uint *)view =\n           uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    }\n    else {\n      this->calculated_value_ = uVar49;\n      SVar27 = STATUS_OKAY;\n    }\n    break;\n  case 0x27:\n  case 0x29:\n    bVar61 = false;\nswitchD_002c5379_caseD_27:\n    uVar21 = *(uint *)view;\n    uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    if (bVar61 == false) {\n      uVar21 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (binary_expression "gsym != (Sized_symbol<32> *)0x0)" identifier != (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) (compound_statement "{\n      bVar62 = (gsym->super_Symbol).dynsym_index_ != 0;\n      object = (_List_node_base **)(ulong)bVar62;\n      bVar62 = symbol_refs_local(&gsym->super_Symbol,bVar62,true);\n      if (!bVar62) break;\n      cVar47 = this->calculate_only_;\n    }" { (expression_statement "bVar62 = (gsym->super_Symbol).dynsym_index_ != 0;" (assignment_expression "bVar62 = (gsym->super_Symbol).dynsym_index_ != 0" identifier = (binary_expression "(gsym->super_Symbol).dynsym_index_ != 0" (field_expression "(gsym->super_Symbol).dynsym_index_" (parenthesized_expression "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) )) . field_identifier) != number_literal)) ;) (expression_statement "object = (_List_node_base **)(ulong)bVar62;" (assignment_expression "object = (_List_node_base **)(ulong)bVar62" identifier = (cast_expression "(_List_node_base **)(ulong)bVar62" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)bVar62" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "bVar62 = symbol_refs_local(&gsym->super_Symbol,bVar62,true);" (assignment_expression "bVar62 = symbol_refs_local(&gsym->super_Symbol,bVar62,true)" identifier = (call_expression "symbol_refs_local(&gsym->super_Symbol,bVar62,true)" identifier (argument_list "(&gsym->super_Symbol,bVar62,true)" ( (pointer_expression "&gsym->super_Symbol" & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) , identifier , true )))) ;) (if_statement "if (!bVar62) break;" if (parenthesized_expression "(!bVar62)" ( (unary_expression "!bVar62" ! identifier) )) (break_statement "break;" break ;)) (expression_statement "cVar47 = this->calculate_only_;" (assignment_expression "cVar47 = this->calculate_only_" identifier = (field_expression "this->calculate_only_" identifier -> field_identifier)) ;) }) (call_expression "VVar20 = 0;\n    if (bVar61 == false)" (assignment_expression "VVar20 = 0" identifier = number_literal) (ERROR ";\n    if" ; if) (argument_list "(bVar61 == false)" ( (binary_expression "bVar61 == false" identifier == false) ))) (compound_statement "{\n      VVar20 = local_c8;\n    }" { (expression_statement "VVar20 = local_c8;" (assignment_expression "VVar20 = local_c8" identifier = identifier) ;) }) (assignment_expression "uVar49 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" identifier = (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8" (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8" (binary_expression "uVar49 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar49 & 0xff0000) >> 8" (parenthesized_expression "(uVar49 & 0xff0000)" ( (binary_expression "uVar49 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar49 << 0x18" identifier << number_literal))) ; (call_expression "uVar49 = uVar23;\n    if (((uVar21 == 0x25) && (local_e3 != 1)) && ((uVar23 == 0x3200008 || (uVar23 == 0x320f809))))" (assignment_expression "uVar49 = uVar23" identifier = identifier) (ERROR ";\n    if" ; if) (argument_list "(((uVar21 == 0x25) && (local_e3 != 1)) && ((uVar23 == 0x3200008 || (uVar23 == 0x320f809))))" ( (binary_expression "((uVar21 == 0x25) && (local_e3 != 1)) && ((uVar23 == 0x3200008 || (uVar23 == 0x320f809)))" (parenthesized_expression "((uVar21 == 0x25) && (local_e3 != 1))" ( (binary_expression "(uVar21 == 0x25) && (local_e3 != 1)" (parenthesized_expression "(uVar21 == 0x25)" ( (binary_expression "uVar21 == 0x25" identifier == number_literal) )) && (parenthesized_expression "(local_e3 != 1)" ( (binary_expression "local_e3 != 1" identifier != number_literal) ))) )) && (parenthesized_expression "((uVar23 == 0x3200008 || (uVar23 == 0x320f809)))" ( (parenthesized_expression "(uVar23 == 0x3200008 || (uVar23 == 0x320f809))" ( (binary_expression "uVar23 == 0x3200008 || (uVar23 == 0x320f809)" (binary_expression "uVar23 == 0x3200008" identifier == number_literal) || (parenthesized_expression "(uVar23 == 0x320f809)" ( (binary_expression "uVar23 == 0x320f809" identifier == number_literal) ))) )) ))) ))) (compound_statement "{\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      if ((VVar20 - address) + 0x1fffc < 0x40000) {\n        uVar21 = (VVar20 - address) - 4 >> 2 & 0xffff;\n        uVar49 = uVar21 | 0x10000000;\n        if (uVar23 != 0x3200008) {\n          uVar49 = uVar21 | 0x4110000;\n        }\n      }\n    }" { (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20)" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true" (binary_expression "VVar20 = gold::Symbol_value<32>::value" (binary_expression "VVar20 = gold::Symbol_value<32" (assignment_expression "VVar20 = gold" identifier = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,VVar20)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,VVar20" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,VVar20" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ))) ;) (if_statement "if ((VVar20 - address) + 0x1fffc < 0x40000) {\n        uVar21 = (VVar20 - address) - 4 >> 2 & 0xffff;\n        uVar49 = uVar21 | 0x10000000;\n        if (uVar23 != 0x3200008) {\n          uVar49 = uVar21 | 0x4110000;\n        }\n      }" if (parenthesized_expression "((VVar20 - address) + 0x1fffc < 0x40000)" ( (binary_expression "(VVar20 - address) + 0x1fffc < 0x40000" (binary_expression "(VVar20 - address) + 0x1fffc" (parenthesized_expression "(VVar20 - address)" ( (binary_expression "VVar20 - address" identifier - identifier) )) + number_literal) < number_literal) )) (compound_statement "{\n        uVar21 = (VVar20 - address) - 4 >> 2 & 0xffff;\n        uVar49 = uVar21 | 0x10000000;\n        if (uVar23 != 0x3200008) {\n          uVar49 = uVar21 | 0x4110000;\n        }\n      }" { (expression_statement "uVar21 = (VVar20 - address) - 4 >> 2 & 0xffff;" (assignment_expression "uVar21 = (VVar20 - address) - 4 >> 2 & 0xffff" identifier = (binary_expression "(VVar20 - address) - 4 >> 2 & 0xffff" (binary_expression "(VVar20 - address) - 4 >> 2" (binary_expression "(VVar20 - address) - 4" (parenthesized_expression "(VVar20 - address)" ( (binary_expression "VVar20 - address" identifier - identifier) )) - number_literal) >> number_literal) & number_literal)) ;) (expression_statement "uVar49 = uVar21 | 0x10000000;" (assignment_expression "uVar49 = uVar21 | 0x10000000" identifier = (binary_expression "uVar21 | 0x10000000" identifier | number_literal)) ;) (if_statement "if (uVar23 != 0x3200008) {\n          uVar49 = uVar21 | 0x4110000;\n        }" if (parenthesized_expression "(uVar23 != 0x3200008)" ( (binary_expression "uVar23 != 0x3200008" identifier != number_literal) )) (compound_statement "{\n          uVar49 = uVar21 | 0x4110000;\n        }" { (expression_statement "uVar49 = uVar21 | 0x4110000;" (assignment_expression "uVar49 = uVar21 | 0x4110000" identifier = (binary_expression "uVar21 | 0x4110000" identifier | number_literal)) ;) })) })) }) if (parenthesized_expression "(cVar47 == '\0')" ( (binary_expression "cVar47 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      SVar27 = STATUS_OKAY;\n      *(uint *)view =\n           uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;\n    }" { (expression_statement "SVar27 = STATUS_OKAY;" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ;) (expression_statement "*(uint *)view =\n           uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;" (assignment_expression "*(uint *)view =\n           uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8" (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8" (binary_expression "uVar49 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar49 & 0xff0000) >> 8" (parenthesized_expression "(uVar49 & 0xff0000)" ( (binary_expression "uVar49 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar49 << 0x18" identifier << number_literal))) ;) }) else (compound_statement "{\n      this->calculated_value_ = uVar49;\n      SVar27 = STATUS_OKAY;\n    }" { (expression_statement "this->calculated_value_ = uVar49;" (assignment_expression "this->calculated_value_ = uVar49" (field_expression "this->calculated_value_" identifier -> field_identifier) = identifier) ;) (expression_statement "SVar27 = STATUS_OKAY;" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ;) }) break ; case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (call_expression "uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    if (bVar61 == false)" (assignment_expression "uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar21 << 0x18" identifier << number_literal))) (ERROR ";\n    if" ; if) (argument_list "(bVar61 == false)" ( (binary_expression "bVar61 == false" identifier == false) ))) (compound_statement "{\n      uVar21 = local_c8;\n    }" { (expression_statement "uVar21 = local_c8;" (assignment_expression "uVar21 = local_c8" identifier = identifier) ;) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21);\n    uVar23 = VVar20 - 0x8000;\n    if (!bVar62 || !bVar63) goto LAB_002c5ccb;\n    goto LAB_002c59a8;\n  case 0x2a:\n  case 0x6a:\n  case 0xa2:\n    bVar61 = false;\nswitchD_002c5379_caseD_2a:" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,uVar21)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,uVar21" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,uVar21" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ; (call_expression "uVar23 = VVar20 - 0x8000;\n    if (!bVar62 || !bVar63)" (assignment_expression "uVar23 = VVar20 - 0x8000" identifier = (binary_expression "VVar20 - 0x8000" identifier - number_literal)) (ERROR ";\n    if" ; if) (argument_list "(!bVar62 || !bVar63)" ( (binary_expression "!bVar62 || !bVar63" (unary_expression "!bVar62" ! identifier) || (unary_expression "!bVar63" ! identifier)) ))) identifier identifier ; goto identifier ; case number_literal : case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier :) identifier = ( (ERROR "Mips_relobj<32,_false> *)target->got_;\n    if" (comma_expression "Mips_relobj<32,_false> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ; if) ( (ERROR "gsym == (Sized_symbol<32> *)0x0) {\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,2,(long)(int)local_c8);\n        goto LAB_002c5c48;\n      }\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\nLAB_002c8333:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8338;\n    }\n    if" (binary_expression "gsym == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) (compound_statement "{\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,2,(long)(int)local_c8);\n        goto LAB_002c5c48;\n      }\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\nLAB_002c8333:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8338;\n    }" { (if_statement "if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,2,(long)(int)local_c8);\n        goto LAB_002c5c48;\n      }" if (parenthesized_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,2,(long)(int)local_c8);\n        goto LAB_002c5c48;\n      }" { (expression_statement "local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,2,(long)(int)local_c8);" (assignment_expression "local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,2,(long)(int)local_c8)" identifier = (parenthesized_expression "(*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,2,(long)(int)local_c8)" ( (pointer_expression "*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,2,(long)(int)local_c8)" * (call_expression "(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,2,(long)(int)local_c8)" (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])" ( (subscript_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c]" (field_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object" (field_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(this_00->super_Sized_relobj_file<32,_false>)" ( (comma_expression "this_00->super_Sized_relobj_file<32,_false" (binary_expression "this_00->super_Sized_relobj_file<32" (field_expression "this_00->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) [ number_literal ]) )) (argument_list "(this_00,(ulong)_Var14,2,(long)(int)local_c8)" ( identifier , (cast_expression "(ulong)_Var14" ( (type_descriptor "ulong" type_identifier) ) identifier) , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ))) ;) (goto_statement "goto LAB_002c5c48;" goto statement_identifier ;) })) (expression_statement "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);" (comma_expression "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)0x0)" identifier > (ERROR "::" : :) (call_expression "got_section((Target_mips<32,_true> *)0x0)" identifier (argument_list "((Target_mips<32,_true> *)0x0)" ( (parenthesized_expression "(Target_mips<32,_true> *)0x0)" ( (comma_expression "Target_mips<32,_true> *)0x0" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) ))))) ;) (labeled_statement "LAB_002c8333:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);" statement_identifier : (expression_statement "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);" (comma_expression "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)pMVar53)" identifier > (ERROR "::" : :) (call_expression "got_section((Target_mips<32,_true> *)pMVar53)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53)" ( (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ))))) ;)) (goto_statement "goto LAB_002c8338;" goto statement_identifier ;) }) if) ( (ERROR "pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n      local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,2,\n                            (Mips_relobj<32,_true> *)this_00);\nLAB_002c5c48:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) goto LAB_002c5c62;\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n    }" (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) (compound_statement "{\n      local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,2,\n                            (Mips_relobj<32,_true> *)this_00);\nLAB_002c5c48:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) goto LAB_002c5c62;\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n    }" { (expression_statement "local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,2,\n                            (Mips_relobj<32,_true> *)this_00);" (comma_expression "local_e8 = Mips_output_data_got<32,_true>::got_offset" (assignment_expression "local_e8 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , (binary_expression "_true>::got_offset" identifier > (ERROR "::" : :) identifier)) (ERROR "((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,2,\n                            (Mips_relobj<32,_true> *)this_00)" ( ( (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,2,\n                            (Mips_relobj<32,_true> *)this_00)" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,&gsym->super_Symbol,2,\n                            (Mips_relobj<32,_true> *)this_00)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "&gsym->super_Symbol,2,\n                            (Mips_relobj<32,_true> *)this_00)" (pointer_expression "&gsym->super_Symbol" & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) , (comma_expression "2,\n                            (Mips_relobj<32,_true> *)this_00)" number_literal , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) ))))))) ;) (labeled_statement "LAB_002c5c48:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;" statement_identifier : (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)target->got_;" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)target->got_" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)target->got_" ( (comma_expression "Mips_relobj<32,_false> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ))) ;)) (if_statement "if (pMVar53 != (Mips_relobj<32,_false> *)0x0) goto LAB_002c5c62;" if (parenthesized_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (goto_statement "goto LAB_002c5c62;" goto statement_identifier ;)) (expression_statement "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);" (comma_expression "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)0x0)" identifier > (ERROR "::" : :) (call_expression "got_section((Target_mips<32,_true> *)0x0)" identifier (argument_list "((Target_mips<32,_true> *)0x0)" ( (parenthesized_expression "(Target_mips<32,_true> *)0x0)" ( (comma_expression "Target_mips<32,_true> *)0x0" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) ))))) ;) })) (binary_expression "Target_mips<32" identifier < number_literal) , identifier > (ERROR "::" : :) identifier ( (ERROR "(Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c83ab;\n  case 0x2b:\n  case 0x6b:\n  case 0xa3:\n    bVar61 = false;\nswitchD_002c5379_caseD_2b:" (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ; goto identifier ; case number_literal : case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier :) identifier = ( (ERROR "Mips_relobj<32,_false> *)target->got_;\n    if" (comma_expression "Mips_relobj<32,_false> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ; if) ( (ERROR "pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\nLAB_002c8364:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8369;\n    }\n    if" (binary_expression "pMVar53 == (Mips_relobj<32,_false> *)0x0)" identifier == (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) (compound_statement "{\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\nLAB_002c8364:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);\n      goto LAB_002c8369;\n    }" { (expression_statement "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);" (comma_expression "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)0x0)" identifier > (ERROR "::" : :) (call_expression "got_section((Target_mips<32,_true> *)0x0)" identifier (argument_list "((Target_mips<32,_true> *)0x0)" ( (parenthesized_expression "(Target_mips<32,_true> *)0x0)" ( (comma_expression "Target_mips<32,_true> *)0x0" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) ))))) ;) (labeled_statement "LAB_002c8364:\n      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);" statement_identifier : (expression_statement "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);" (comma_expression "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)pMVar53)" identifier > (ERROR "::" : :) (call_expression "got_section((Target_mips<32,_true> *)pMVar53)" identifier (argument_list "((Target_mips<32,_true> *)pMVar53)" ( (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ))))) ;)) (goto_statement "goto LAB_002c8369;" goto statement_identifier ;) }) if) ( (parenthesized_expression "(((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n        local_got_offsets_)._M_h._M_rehash_policy._M_next_resize == 0)" ( (binary_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n        local_got_offsets_)._M_h._M_rehash_policy._M_next_resize == 0" (field_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n        local_got_offsets_)._M_h._M_rehash_policy._M_next_resize" (field_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n        local_got_offsets_)._M_h._M_rehash_policy" (field_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n        local_got_offsets_)._M_h" (parenthesized_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n        local_got_offsets_)" ( (field_expression "(Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n        local_got_offsets_" (parenthesized_expression "(Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) == number_literal) )) (ERROR "{\n      pMVar30" { identifier) = * ( (binary_expression "Mips_got_info<32" identifier < number_literal) , identifier > * * (ERROR ")" )) & ( (ERROR "((Sized_relobj<32,_true> *)\n                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  local_got_offsets_)._M_h._M_rehash_policy;\n    }\n    else {\n      pMVar30 = (Mips_got_info<32,_true> *)this_00->got_info_;\n    }\n    if" (field_expression "((Sized_relobj<32,_true> *)\n                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  local_got_offsets_)._M_h._M_rehash_policy" (field_expression "((Sized_relobj<32,_true> *)\n                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  local_got_offsets_)._M_h" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  local_got_offsets_)" ( (field_expression "(Sized_relobj<32,_true> *)\n                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  local_got_offsets_" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) ; } else (compound_statement "{\n      pMVar30 = (Mips_got_info<32,_true> *)this_00->got_info_;\n    }" { (expression_statement "pMVar30 = (Mips_got_info<32,_true> *)this_00->got_info_;" (assignment_expression "pMVar30 = (Mips_got_info<32,_true> *)this_00->got_info_" identifier = (parenthesized_expression "(Mips_got_info<32,_true> *)this_00->got_info_" ( (comma_expression "Mips_got_info<32,_true> *)this_00->got_info_" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)this_00->got_info_" identifier > (pointer_expression "*)this_00->got_info_" * (ERROR ")" )) (field_expression "this_00->got_info_" identifier -> field_identifier)))) ))) ;) }) if) ( (ERROR "pMVar30 == (Mips_got_info<32,_true> *)0x0) goto LAB_002c828a;\n    local_e8 = pMVar30->tls_ldm_offset_;\n    object = (_List_node_base **)(ulong)local_e8;" (binary_expression "pMVar30 == (Mips_got_info<32,_true> *)0x0) goto LAB_002c828a;\n    local_e8 = pMVar30->tls_ldm_offset_" identifier == (ERROR "(Mips_got_info<32,_true> *)0x0) goto LAB_002c828a;" (parenthesized_expression "(Mips_got_info<32,_true> *)0x0)" ( (comma_expression "Mips_got_info<32,_true> *)0x0" (binary_expression "Mips_got_info<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) identifier identifier ;) (assignment_expression "local_e8 = pMVar30->tls_ldm_offset_" identifier = (field_expression "pMVar30->tls_ldm_offset_" identifier -> field_identifier))) ; (assignment_expression "object = (_List_node_base **)(ulong)local_e8" identifier = (cast_expression "(_List_node_base **)(ulong)local_e8" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)local_e8" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (assignment_expression "uVar23 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , identifier > (ERROR "::" : :) identifier ( ( (ERROR "Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00);\nLAB_002c5c74:\n    pRVar50 = this;\n    if (this->calculate_only_ != false) goto LAB_002c5c85;\nLAB_002c6098:\n    uVar21 = *(uint *)view;\n    uVar49 = (uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8) ^ uVar23;\n    uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;\nLAB_002c60ab:\n    *(uint *)view = uVar21;\n    SVar27 = (Status)(0xffff < uVar23 + 0x8000);\n    break;\n  case 0x2c:\n  case 0x6c:\n  case 0xa4:\n    bVar61 = false;\nswitchD_002c5379_caseD_2c:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar23 = uVar49;\n    if (bVar61 == false) {\n      uVar23 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    uVar23 = gold::" (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00)" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,local_e8,\n                        (Mips_relobj<32,_true> *)this_00)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "local_e8,\n                        (Mips_relobj<32,_true> *)this_00)" identifier , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) ))))) ; identifier : (call_expression "pRVar50 = this;\n    if (this->calculate_only_ != false)" (assignment_expression "pRVar50 = this" identifier = identifier) (ERROR ";\n    if" ; if) (argument_list "(this->calculate_only_ != false)" ( (binary_expression "this->calculate_only_ != false" (field_expression "this->calculate_only_" identifier -> field_identifier) != false) ))) identifier identifier ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = (uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8) ^ uVar23" identifier = (binary_expression "(uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8) ^ uVar23" (parenthesized_expression "(uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8)" ( (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) )) ^ identifier)) ; (assignment_expression "uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21" identifier = (binary_expression "((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21" (parenthesized_expression "((uVar49 & 0xff00) << 8 | uVar49 << 0x18)" ( (binary_expression "(uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar49 << 0x18" identifier << number_literal)) )) ^ identifier)) ; (binary_expression "LAB_002c60ab:\n    *(uint *)view = uVar21" identifier (ERROR ":" :) * (cast_expression "(uint *)view = uVar21" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "view = uVar21" identifier = identifier))) ; (assignment_expression "SVar27 = (Status)(0xffff < uVar23 + 0x8000)" identifier = (call_expression "(Status)(0xffff < uVar23 + 0x8000)" (parenthesized_expression "(Status)" ( identifier )) (argument_list "(0xffff < uVar23 + 0x8000)" ( (binary_expression "0xffff < uVar23 + 0x8000" number_literal < (binary_expression "uVar23 + 0x8000" identifier + number_literal)) )))) ; break ; case number_literal : case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal))) ; (call_expression "uVar23 = uVar49;\n    if (bVar61 == false)" (assignment_expression "uVar23 = uVar49" identifier = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 == false)" ( (binary_expression "bVar61 == false" identifier == false) ))) (compound_statement "{\n      uVar23 = local_c8;\n    }" { (expression_statement "uVar23 = local_c8;" (assignment_expression "uVar23 = local_c8" identifier = identifier) ;) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "uVar23 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);\n    goto LAB_002c5a76;\n  case 0x2d:\n  case 0x6d:\n  case 0xa5:\nswitchD_002c4f87_caseD_2d:\n    bVar61 = false;\nswitchD_002c5379_caseD_2d:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar23 = uVar49;\n    if (bVar61 == false) {\n      uVar23 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,uVar23)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,uVar23" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,uVar23" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ; goto identifier ; case number_literal : case number_literal : case number_literal : identifier : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal))) ; (call_expression "uVar23 = uVar49;\n    if (bVar61 == false)" (assignment_expression "uVar23 = uVar49" identifier = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 == false)" ( (binary_expression "bVar61 == false" identifier == false) ))) (compound_statement "{\n      uVar23 = local_c8;\n    }" { (expression_statement "uVar23 = local_c8;" (assignment_expression "uVar23 = local_c8" identifier = identifier) ;) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);\n    uVar23 = VVar20 - 0x8000;\n    goto joined_r0x002c59a3;\n  case 0x2e:\n  case 0x6e:\n  case 0xa6:\n    bVar61 = false;\nswitchD_002c5379_caseD_2e:" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,uVar23)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,uVar23" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,uVar23" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ; (assignment_expression "uVar23 = VVar20 - 0x8000" identifier = (binary_expression "VVar20 - 0x8000" identifier - number_literal)) ; goto identifier ; case number_literal : case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier :) identifier = ( (ERROR "Mips_relobj<32,_false> *)target->got_;\n    if" (comma_expression "Mips_relobj<32,_false> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ; if) ( (ERROR "gsym == (Sized_symbol<32> *)0x0) {\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,1,(long)(int)local_c8);\n        goto LAB_002c5b06;\n      }\n      goto LAB_002c836e;\n    }\n    if" (binary_expression "gsym == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) (compound_statement "{\n      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,1,(long)(int)local_c8);\n        goto LAB_002c5b06;\n      }\n      goto LAB_002c836e;\n    }" { (if_statement "if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,1,(long)(int)local_c8);\n        goto LAB_002c5b06;\n      }" if (parenthesized_expression "(pMVar53 != (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\n        local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,1,(long)(int)local_c8);\n        goto LAB_002c5b06;\n      }" { (expression_statement "local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,1,(long)(int)local_c8);" (assignment_expression "local_e8 = (*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,1,(long)(int)local_c8)" identifier = (parenthesized_expression "(*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,1,(long)(int)local_c8)" ( (pointer_expression "*(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,1,(long)(int)local_c8)" * (call_expression "(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])\n                             (this_00,(ulong)_Var14,1,(long)(int)local_c8)" (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c])" ( (subscript_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object[0x2c]" (field_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object._vptr_Object" (field_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)\n                     ->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(this_00->super_Sized_relobj_file<32,_false>)" ( (comma_expression "this_00->super_Sized_relobj_file<32,_false" (binary_expression "this_00->super_Sized_relobj_file<32" (field_expression "this_00->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) [ number_literal ]) )) (argument_list "(this_00,(ulong)_Var14,1,(long)(int)local_c8)" ( identifier , (cast_expression "(ulong)_Var14" ( (type_descriptor "ulong" type_identifier) ) identifier) , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ))) ;) (goto_statement "goto LAB_002c5b06;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c836e;" goto statement_identifier ;) }) if) ( (ERROR "pMVar53 != (Mips_relobj<32,_false> *)0x0) {\n      local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,1,\n                            (Mips_relobj<32,_true> *)this_00);\nLAB_002c5b06:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n        goto switchD_002c4f87_caseD_2d;\n      }\nLAB_002c5c62:\n      object = (_List_node_base **)(ulong)local_e8;\n      uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                         ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00);\n      goto LAB_002c5c74;\n    }\nLAB_002c8338:\n    Target_mips<32,_true>::" (binary_expression "pMVar53 != (Mips_relobj<32,_false> *)0x0)" identifier != (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) (compound_statement "{\n      local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,1,\n                            (Mips_relobj<32,_true> *)this_00);\nLAB_002c5b06:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;\n      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n        goto switchD_002c4f87_caseD_2d;\n      }\nLAB_002c5c62:\n      object = (_List_node_base **)(ulong)local_e8;\n      uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                         ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00);\n      goto LAB_002c5c74;\n    }" { (expression_statement "local_e8 = Mips_output_data_got<32,_true>::got_offset\n                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,1,\n                            (Mips_relobj<32,_true> *)this_00);" (comma_expression "local_e8 = Mips_output_data_got<32,_true>::got_offset" (assignment_expression "local_e8 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , (binary_expression "_true>::got_offset" identifier > (ERROR "::" : :) identifier)) (ERROR "((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,1,\n                            (Mips_relobj<32,_true> *)this_00)" ( ( (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,1,\n                            (Mips_relobj<32,_true> *)this_00)" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,&gsym->super_Symbol,1,\n                            (Mips_relobj<32,_true> *)this_00)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "&gsym->super_Symbol,1,\n                            (Mips_relobj<32,_true> *)this_00)" (pointer_expression "&gsym->super_Symbol" & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) , (comma_expression "1,\n                            (Mips_relobj<32,_true> *)this_00)" number_literal , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) ))))))) ;) (labeled_statement "LAB_002c5b06:\n      pMVar53 = (Mips_relobj<32,_false> *)target->got_;" statement_identifier : (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)target->got_;" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)target->got_" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)target->got_" ( (comma_expression "Mips_relobj<32,_false> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ))) ;)) (if_statement "if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {\n        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n        goto switchD_002c4f87_caseD_2d;\n      }" if (parenthesized_expression "(pMVar53 == (Mips_relobj<32,_false> *)0x0)" ( (binary_expression "pMVar53 == (Mips_relobj<32,_false> *)0x0)" identifier == (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) ))) )) (compound_statement "{\n        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);\n        goto switchD_002c4f87_caseD_2d;\n      }" { (expression_statement "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);" (comma_expression "Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0)" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true>::got_section((Target_mips<32,_true> *)0x0)" identifier > (ERROR "::" : :) (call_expression "got_section((Target_mips<32,_true> *)0x0)" identifier (argument_list "((Target_mips<32,_true> *)0x0)" ( (parenthesized_expression "(Target_mips<32,_true> *)0x0)" ( (comma_expression "Target_mips<32,_true> *)0x0" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) ))))) ;) (goto_statement "goto switchD_002c4f87_caseD_2d;" goto statement_identifier ;) })) (labeled_statement "LAB_002c5c62:\n      object = (_List_node_base **)(ulong)local_e8;" statement_identifier : (expression_statement "object = (_List_node_base **)(ulong)local_e8;" (assignment_expression "object = (_List_node_base **)(ulong)local_e8" identifier = (cast_expression "(_List_node_base **)(ulong)local_e8" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (cast_expression "(ulong)local_e8" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;)) (expression_statement "uVar23 = Mips_output_data_got<32,_true>::gp_offset\n                         ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00);" (comma_expression "uVar23 = Mips_output_data_got<32,_true>::gp_offset" (assignment_expression "uVar23 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , (binary_expression "_true>::gp_offset" identifier > (ERROR "::" : :) identifier)) (ERROR "((Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00)" ( ( (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00)" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,local_e8,\n                          (Mips_relobj<32,_true> *)this_00)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "local_e8,\n                          (Mips_relobj<32,_true> *)this_00)" identifier , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) )))))) ;) (goto_statement "goto LAB_002c5c74;" goto statement_identifier ;) }) identifier : identifier < number_literal , identifier > : :) identifier ( (ERROR "(Target_mips<32,_true> *)pMVar53);\n    goto LAB_002c833d;\n  case 0x2f:\n  case 0x30:\n    bVar61 = false;\nswitchD_002c5379_caseD_2f:\n    uVar21 = *(uint *)view;\n    uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    if (bVar61 == false) {\n      uVar21 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (parenthesized_expression "(Target_mips<32,_true> *)pMVar53)" ( (comma_expression "Target_mips<32,_true> *)pMVar53" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier))) )) ; goto identifier ; case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (call_expression "uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    if (bVar61 == false)" (assignment_expression "uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar21 << 0x18" identifier << number_literal))) (ERROR ";\n    if" ; if) (argument_list "(bVar61 == false)" ( (binary_expression "bVar61 == false" identifier == false) ))) (compound_statement "{\n      uVar21 = local_c8;\n    }" { (expression_statement "uVar21 = local_c8;" (assignment_expression "uVar21 = local_c8" identifier = identifier) ;) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21);\n    uVar23 = VVar20 - 0x7000;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    SVar27 = STATUS_OKAY;\n    *(uint *)view =\n         uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | VVar20 << 0x18;\n    break;\n  case 0x31:\n  case 0x6f:\n  case 0xa9:\n    bVar61 = false;\nswitchD_002c5379_caseD_31:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar23 = uVar49;\n    if (bVar61 == false) {\n      uVar23 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,uVar21)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,uVar21" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,uVar21" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ; (call_expression "uVar23 = VVar20 - 0x7000;\n    if ((bool)cVar47)" (assignment_expression "uVar23 = VVar20 - 0x7000" identifier = (binary_expression "VVar20 - 0x7000" identifier - number_literal)) (ERROR ";\n    if" ; if) (argument_list "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) ))) identifier identifier ; (binary_expression "SVar27 = STATUS_OKAY;\n    *(uint *)view =\n         uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | VVar20 << 0x18" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) (ERROR ";" ;) * (cast_expression "(uint *)view =\n         uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | VVar20 << 0x18" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "view =\n         uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | VVar20 << 0x18" identifier = (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | VVar20 << 0x18" (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8" (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8" (binary_expression "uVar23 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar23 & 0xff0000) >> 8" (parenthesized_expression "(uVar23 & 0xff0000)" ( (binary_expression "uVar23 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar23 & 0xff00) << 8" (parenthesized_expression "(uVar23 & 0xff00)" ( (binary_expression "uVar23 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "VVar20 << 0x18" identifier << number_literal))))) ; break ; case number_literal : case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal))) ; (call_expression "uVar23 = uVar49;\n    if (bVar61 == false)" (assignment_expression "uVar23 = uVar49" identifier = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 == false)" ( (binary_expression "bVar61 == false" identifier == false) ))) (compound_statement "{\n      uVar23 = local_c8;\n    }" { (expression_statement "uVar23 = local_c8;" (assignment_expression "uVar23 = local_c8" identifier = identifier) ;) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);\n    uVar23 = VVar20 + 0x1000;\nLAB_002c5a76:\n    uVar23 = uVar23 >> 0x10;\n    goto joined_r0x002c59a3;\n  case 0x32:\n  case 0x70:\n  case 0xaa:\n    bVar61 = false;\nswitchD_002c5379_caseD_32:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    uVar23 = uVar49;\n    if (bVar61 == false) {\n      uVar23 = local_c8;\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,uVar23)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,uVar23" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,uVar23" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ; (assignment_expression "uVar23 = VVar20 + 0x1000" identifier = (binary_expression "VVar20 + 0x1000" identifier + number_literal)) ; identifier : (assignment_expression "uVar23 = uVar23 >> 0x10" identifier = (binary_expression "uVar23 >> 0x10" identifier >> number_literal)) ; goto identifier ; case number_literal : case number_literal : case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal))) ; (call_expression "uVar23 = uVar49;\n    if (bVar61 == false)" (assignment_expression "uVar23 = uVar49" identifier = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 == false)" ( (binary_expression "bVar61 == false" identifier == false) ))) (compound_statement "{\n      uVar23 = local_c8;\n    }" { (expression_statement "uVar23 = local_c8;" (assignment_expression "uVar23 = local_c8" identifier = identifier) ;) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);\n    uVar23 = VVar20 - 0x7000;\njoined_r0x002c59a3:\n    if (bVar62 && bVar63) goto LAB_002c59a8;\n    *(uint *)view = uVar21 ^ (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18);\n    SVar27 = STATUS_OKAY;\n    break;\n  case 0x3c:\n    bVar61 = false;\nLAB_002c6f06:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 4;\n      uVar26 = uVar23 & 0x7ffffc;\n      local_c0._0_4_ = uVar26 - 0x800000;\n      if ((uVar23 & 0x400000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,uVar23)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,uVar23" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,uVar23" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ; (assignment_expression "uVar23 = VVar20 - 0x7000" identifier = (binary_expression "VVar20 - 0x7000" identifier - number_literal)) ; (call_expression "joined_r0x002c59a3:\n    if (bVar62 && bVar63)" identifier (ERROR ":\n    if" : if) (argument_list "(bVar62 && bVar63)" ( (binary_expression "bVar62 && bVar63" identifier && identifier) ))) identifier (binary_expression "LAB_002c59a8;\n    *(uint *)view = uVar21 ^ (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18)" identifier (ERROR ";" ;) * (cast_expression "(uint *)view = uVar21 ^ (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "view = uVar21 ^ (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18)" identifier = (binary_expression "uVar21 ^ (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18)" identifier ^ (parenthesized_expression "(((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18)" ( (binary_expression "((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18" (binary_expression "((uVar23 ^ uVar49) & 0xff00) << 8" (parenthesized_expression "((uVar23 ^ uVar49) & 0xff00)" ( (binary_expression "(uVar23 ^ uVar49) & 0xff00" (parenthesized_expression "(uVar23 ^ uVar49)" ( (binary_expression "uVar23 ^ uVar49" identifier ^ identifier) )) & number_literal) )) << number_literal) | (binary_expression "(uVar23 ^ uVar49) << 0x18" (parenthesized_expression "(uVar23 ^ uVar49)" ( (binary_expression "uVar23 ^ uVar49" identifier ^ identifier) )) << number_literal)) )))))) ; (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ; break ; case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal))) ; (call_expression "local_c0._0_4_ = local_c8;\n    if (bVar61 != false)" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) ))) (compound_statement "{\n      uVar23 = uVar49 * 4;\n      uVar26 = uVar23 & 0x7ffffc;\n      local_c0._0_4_ = uVar26 - 0x800000;\n      if ((uVar23 & 0x400000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }" { (expression_statement "uVar23 = uVar49 * 4;" (assignment_expression "uVar23 = uVar49 * 4" identifier = (binary_expression "uVar49 * 4" identifier * number_literal)) ;) (expression_statement "uVar26 = uVar23 & 0x7ffffc;" (assignment_expression "uVar26 = uVar23 & 0x7ffffc" identifier = (binary_expression "uVar23 & 0x7ffffc" identifier & number_literal)) ;) (expression_statement "local_c0._0_4_ = uVar26 - 0x800000;" (assignment_expression "local_c0._0_4_ = uVar26 - 0x800000" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar26 - 0x800000" identifier - number_literal)) ;) (if_statement "if ((uVar23 & 0x400000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }" if (parenthesized_expression "((uVar23 & 0x400000) == 0)" ( (binary_expression "(uVar23 & 0x400000) == 0" (parenthesized_expression "(uVar23 & 0x400000)" ( (binary_expression "uVar23 & 0x400000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        local_c0._0_4_ = uVar26;\n      }" { (expression_statement "local_c0._0_4_ = uVar26;" (assignment_expression "local_c0._0_4_ = uVar26" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) })) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address >> 2;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    uVar49 = uVar49 ^ uVar23;\n    *(uint *)view = uVar21 ^ ((uVar49 & 0x1f0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n    object = (_List_node_base **)this_00;\n    VVar24 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (call_expression "uVar23 = VVar20 - address >> 2;\n    if ((bool)cVar47)" (assignment_expression "uVar23 = VVar20 - address >> 2" identifier = (binary_expression "VVar20 - address >> 2" (binary_expression "VVar20 - address" identifier - identifier) >> number_literal)) (ERROR ";\n    if" ; if) (argument_list "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) ))) identifier identifier ; (binary_expression "uVar49 = uVar49 ^ uVar23;\n    *(uint *)view = uVar21 ^ ((uVar49 & 0x1f0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18)" (assignment_expression "uVar49 = uVar49 ^ uVar23" identifier = (binary_expression "uVar49 ^ uVar23" identifier ^ identifier)) (ERROR ";" ;) * (cast_expression "(uint *)view = uVar21 ^ ((uVar49 & 0x1f0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "view = uVar21 ^ ((uVar49 & 0x1f0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18)" identifier = (binary_expression "uVar21 ^ ((uVar49 & 0x1f0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18)" identifier ^ (parenthesized_expression "((uVar49 & 0x1f0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18)" ( (binary_expression "(uVar49 & 0x1f0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "(uVar49 & 0x1f0000) >> 8 | (uVar49 & 0xff00) << 8" (binary_expression "(uVar49 & 0x1f0000) >> 8" (parenthesized_expression "(uVar49 & 0x1f0000)" ( (binary_expression "uVar49 & 0x1f0000" identifier & number_literal) )) >> number_literal) | (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar49 << 0x18" identifier << number_literal)) )))))) ; (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar24 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    SVar27 = STATUS_PCREL_UNALIGNED;\n    if ((VVar24 & 3) == 0) {\n      SVar27 = (Status)(0x7fffff < (VVar20 - address) + 0x400000);\n    }\n    break;\n  case 0x3d:\n    bVar61 = false;\nLAB_002c6fd2:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 4;\n      uVar26 = uVar23 & 0xffffffc;\n      local_c0._0_4_ = uVar26 + 0xf0000000;\n      if ((uVar23 & 0x8000000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (call_expression "SVar27 = STATUS_PCREL_UNALIGNED;\n    if ((VVar24 & 3) == 0)" (assignment_expression "SVar27 = STATUS_PCREL_UNALIGNED" identifier = identifier) (ERROR ";\n    if" ; if) (argument_list "((VVar24 & 3) == 0)" ( (binary_expression "(VVar24 & 3) == 0" (parenthesized_expression "(VVar24 & 3)" ( (binary_expression "VVar24 & 3" identifier & number_literal) )) == number_literal) ))) (compound_statement "{\n      SVar27 = (Status)(0x7fffff < (VVar20 - address) + 0x400000);\n    }" { (expression_statement "SVar27 = (Status)(0x7fffff < (VVar20 - address) + 0x400000);" (assignment_expression "SVar27 = (Status)(0x7fffff < (VVar20 - address) + 0x400000)" identifier = (call_expression "(Status)(0x7fffff < (VVar20 - address) + 0x400000)" (parenthesized_expression "(Status)" ( identifier )) (argument_list "(0x7fffff < (VVar20 - address) + 0x400000)" ( (binary_expression "0x7fffff < (VVar20 - address) + 0x400000" number_literal < (binary_expression "(VVar20 - address) + 0x400000" (parenthesized_expression "(VVar20 - address)" ( (binary_expression "VVar20 - address" identifier - identifier) )) + number_literal)) )))) ;) }) break ; case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar21 << 0x18" identifier << number_literal))) ; (call_expression "local_c0._0_4_ = local_c8;\n    if (bVar61 != false)" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) ))) (compound_statement "{\n      uVar23 = uVar49 * 4;\n      uVar26 = uVar23 & 0xffffffc;\n      local_c0._0_4_ = uVar26 + 0xf0000000;\n      if ((uVar23 & 0x8000000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }" { (expression_statement "uVar23 = uVar49 * 4;" (assignment_expression "uVar23 = uVar49 * 4" identifier = (binary_expression "uVar49 * 4" identifier * number_literal)) ;) (expression_statement "uVar26 = uVar23 & 0xffffffc;" (assignment_expression "uVar26 = uVar23 & 0xffffffc" identifier = (binary_expression "uVar23 & 0xffffffc" identifier & number_literal)) ;) (expression_statement "local_c0._0_4_ = uVar26 + 0xf0000000;" (assignment_expression "local_c0._0_4_ = uVar26 + 0xf0000000" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar26 + 0xf0000000" identifier + number_literal)) ;) (if_statement "if ((uVar23 & 0x8000000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }" if (parenthesized_expression "((uVar23 & 0x8000000) == 0)" ( (binary_expression "(uVar23 & 0x8000000) == 0" (parenthesized_expression "(uVar23 & 0x8000000)" ( (binary_expression "uVar23 & 0x8000000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        local_c0._0_4_ = uVar26;\n      }" { (expression_statement "local_c0._0_4_ = uVar26;" (assignment_expression "local_c0._0_4_ = uVar26" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) })) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address >> 2;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    uVar49 = uVar49 ^ uVar23;\n    *(uint *)view =\n         uVar21 ^ ((uVar49 & 0x3ffffff) >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8\n                  | (uVar49 & 0x3ffffff) << 0x18);\n    object = (_List_node_base **)this_00;\n    VVar24 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (call_expression "uVar23 = VVar20 - address >> 2;\n    if ((bool)cVar47)" (assignment_expression "uVar23 = VVar20 - address >> 2" identifier = (binary_expression "VVar20 - address >> 2" (binary_expression "VVar20 - address" identifier - identifier) >> number_literal)) (ERROR ";\n    if" ; if) (argument_list "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) ))) identifier identifier ; (binary_expression "uVar49 = uVar49 ^ uVar23;\n    *(uint *)view =\n         uVar21 ^ ((uVar49 & 0x3ffffff) >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8\n                  | (uVar49 & 0x3ffffff) << 0x18)" (assignment_expression "uVar49 = uVar49 ^ uVar23" identifier = (binary_expression "uVar49 ^ uVar23" identifier ^ identifier)) (ERROR ";" ;) * (cast_expression "(uint *)view =\n         uVar21 ^ ((uVar49 & 0x3ffffff) >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8\n                  | (uVar49 & 0x3ffffff) << 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "view =\n         uVar21 ^ ((uVar49 & 0x3ffffff) >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8\n                  | (uVar49 & 0x3ffffff) << 0x18)" identifier = (binary_expression "uVar21 ^ ((uVar49 & 0x3ffffff) >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8\n                  | (uVar49 & 0x3ffffff) << 0x18)" identifier ^ (parenthesized_expression "((uVar49 & 0x3ffffff) >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8\n                  | (uVar49 & 0x3ffffff) << 0x18)" ( (binary_expression "(uVar49 & 0x3ffffff) >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8\n                  | (uVar49 & 0x3ffffff) << 0x18" (binary_expression "(uVar49 & 0x3ffffff) >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8" (binary_expression "(uVar49 & 0x3ffffff) >> 0x18 | (uVar49 & 0xff0000) >> 8" (binary_expression "(uVar49 & 0x3ffffff) >> 0x18" (parenthesized_expression "(uVar49 & 0x3ffffff)" ( (binary_expression "uVar49 & 0x3ffffff" identifier & number_literal) )) >> number_literal) | (binary_expression "(uVar49 & 0xff0000) >> 8" (parenthesized_expression "(uVar49 & 0xff0000)" ( (binary_expression "uVar49 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "(uVar49 & 0x3ffffff) << 0x18" (parenthesized_expression "(uVar49 & 0x3ffffff)" ( (binary_expression "uVar49 & 0x3ffffff" identifier & number_literal) )) << number_literal)) )))))) ; (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar24 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    SVar27 = STATUS_PCREL_UNALIGNED;\n    if ((VVar24 & 3) == 0) {\n      SVar27 = (Status)(0xfffffff < (VVar20 - address) + 0x8000000);\n    }\n    break;\n  case 0x3e:\n    bVar61 = false;\nLAB_002c6d53:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 8;\n      uVar26 = uVar23 & 0x1ffff8;\n      local_c0._0_4_ = uVar26 - 0x200000;\n      if ((uVar23 & 0x100000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (call_expression "SVar27 = STATUS_PCREL_UNALIGNED;\n    if ((VVar24 & 3) == 0)" (assignment_expression "SVar27 = STATUS_PCREL_UNALIGNED" identifier = identifier) (ERROR ";\n    if" ; if) (argument_list "((VVar24 & 3) == 0)" ( (binary_expression "(VVar24 & 3) == 0" (parenthesized_expression "(VVar24 & 3)" ( (binary_expression "VVar24 & 3" identifier & number_literal) )) == number_literal) ))) (compound_statement "{\n      SVar27 = (Status)(0xfffffff < (VVar20 - address) + 0x8000000);\n    }" { (expression_statement "SVar27 = (Status)(0xfffffff < (VVar20 - address) + 0x8000000);" (assignment_expression "SVar27 = (Status)(0xfffffff < (VVar20 - address) + 0x8000000)" identifier = (call_expression "(Status)(0xfffffff < (VVar20 - address) + 0x8000000)" (parenthesized_expression "(Status)" ( identifier )) (argument_list "(0xfffffff < (VVar20 - address) + 0x8000000)" ( (binary_expression "0xfffffff < (VVar20 - address) + 0x8000000" number_literal < (binary_expression "(VVar20 - address) + 0x8000000" (parenthesized_expression "(VVar20 - address)" ( (binary_expression "VVar20 - address" identifier - identifier) )) + number_literal)) )))) ;) }) break ; case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal))) ; (call_expression "local_c0._0_4_ = local_c8;\n    if (bVar61 != false)" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) ))) (compound_statement "{\n      uVar23 = uVar49 * 8;\n      uVar26 = uVar23 & 0x1ffff8;\n      local_c0._0_4_ = uVar26 - 0x200000;\n      if ((uVar23 & 0x100000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }" { (expression_statement "uVar23 = uVar49 * 8;" (assignment_expression "uVar23 = uVar49 * 8" identifier = (binary_expression "uVar49 * 8" identifier * number_literal)) ;) (expression_statement "uVar26 = uVar23 & 0x1ffff8;" (assignment_expression "uVar26 = uVar23 & 0x1ffff8" identifier = (binary_expression "uVar23 & 0x1ffff8" identifier & number_literal)) ;) (expression_statement "local_c0._0_4_ = uVar26 - 0x200000;" (assignment_expression "local_c0._0_4_ = uVar26 - 0x200000" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar26 - 0x200000" identifier - number_literal)) ;) (if_statement "if ((uVar23 & 0x100000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }" if (parenthesized_expression "((uVar23 & 0x100000) == 0)" ( (binary_expression "(uVar23 & 0x100000) == 0" (parenthesized_expression "(uVar23 & 0x100000)" ( (binary_expression "uVar23 & 0x100000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        local_c0._0_4_ = uVar26;\n      }" { (expression_statement "local_c0._0_4_ = uVar26;" (assignment_expression "local_c0._0_4_ = uVar26" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) })) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - (address & 0xfffffff8);\n    uVar23 = uVar26 >> 3;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    uVar49 = uVar49 ^ uVar23;\n    *(uint *)view = uVar21 ^ ((uVar49 & 0x30000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (assignment_expression "uVar26 = VVar20 - (address & 0xfffffff8)" identifier = (binary_expression "VVar20 - (address & 0xfffffff8)" identifier - (parenthesized_expression "(address & 0xfffffff8)" ( (binary_expression "address & 0xfffffff8" identifier & number_literal) )))) ; (call_expression "uVar23 = uVar26 >> 3;\n    if ((bool)cVar47)" (assignment_expression "uVar23 = uVar26 >> 3" identifier = (binary_expression "uVar26 >> 3" identifier >> number_literal)) (ERROR ";\n    if" ; if) (argument_list "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) ))) identifier identifier ; (binary_expression "uVar49 = uVar49 ^ uVar23;\n    *(uint *)view = uVar21 ^ ((uVar49 & 0x30000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18)" (assignment_expression "uVar49 = uVar49 ^ uVar23" identifier = (binary_expression "uVar49 ^ uVar23" identifier ^ identifier)) (ERROR ";" ;) * (cast_expression "(uint *)view = uVar21 ^ ((uVar49 & 0x30000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "view = uVar21 ^ ((uVar49 & 0x30000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18)" identifier = (binary_expression "uVar21 ^ ((uVar49 & 0x30000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18)" identifier ^ (parenthesized_expression "((uVar49 & 0x30000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18)" ( (binary_expression "(uVar49 & 0x30000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "(uVar49 & 0x30000) >> 8 | (uVar49 & 0xff00) << 8" (binary_expression "(uVar49 & 0x30000) >> 8" (parenthesized_expression "(uVar49 & 0x30000)" ( (binary_expression "uVar49 & 0x30000" identifier & number_literal) )) >> number_literal) | (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar49 << 0x18" identifier << number_literal)) )))))) ; (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar21 = VVar20 & 7;\njoined_r0x002c6ec7:\n    SVar27 = STATUS_PCREL_UNALIGNED;\n    if (uVar21 == 0) {\n      SVar27 = (Status)(0x1fffff < uVar26 + 0x100000);\n    }\n    break;\n  case 0x3f:\n    bVar61 = false;\nLAB_002c6e24:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 4;\n      uVar26 = uVar23 & 0x1ffffc;\n      local_c0._0_4_ = uVar26 - 0x200000;\n      if ((uVar23 & 0x100000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (assignment_expression "uVar21 = VVar20 & 7" identifier = (binary_expression "VVar20 & 7" identifier & number_literal)) ; identifier : (call_expression "SVar27 = STATUS_PCREL_UNALIGNED;\n    if (uVar21 == 0)" (assignment_expression "SVar27 = STATUS_PCREL_UNALIGNED" identifier = identifier) (ERROR ";\n    if" ; if) (argument_list "(uVar21 == 0)" ( (binary_expression "uVar21 == 0" identifier == number_literal) ))) (compound_statement "{\n      SVar27 = (Status)(0x1fffff < uVar26 + 0x100000);\n    }" { (expression_statement "SVar27 = (Status)(0x1fffff < uVar26 + 0x100000);" (assignment_expression "SVar27 = (Status)(0x1fffff < uVar26 + 0x100000)" identifier = (call_expression "(Status)(0x1fffff < uVar26 + 0x100000)" (parenthesized_expression "(Status)" ( identifier )) (argument_list "(0x1fffff < uVar26 + 0x100000)" ( (binary_expression "0x1fffff < uVar26 + 0x100000" number_literal < (binary_expression "uVar26 + 0x100000" identifier + number_literal)) )))) ;) }) break ; case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal))) ; (call_expression "local_c0._0_4_ = local_c8;\n    if (bVar61 != false)" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) ))) (compound_statement "{\n      uVar23 = uVar49 * 4;\n      uVar26 = uVar23 & 0x1ffffc;\n      local_c0._0_4_ = uVar26 - 0x200000;\n      if ((uVar23 & 0x100000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }" { (expression_statement "uVar23 = uVar49 * 4;" (assignment_expression "uVar23 = uVar49 * 4" identifier = (binary_expression "uVar49 * 4" identifier * number_literal)) ;) (expression_statement "uVar26 = uVar23 & 0x1ffffc;" (assignment_expression "uVar26 = uVar23 & 0x1ffffc" identifier = (binary_expression "uVar23 & 0x1ffffc" identifier & number_literal)) ;) (expression_statement "local_c0._0_4_ = uVar26 - 0x200000;" (assignment_expression "local_c0._0_4_ = uVar26 - 0x200000" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar26 - 0x200000" identifier - number_literal)) ;) (if_statement "if ((uVar23 & 0x100000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }" if (parenthesized_expression "((uVar23 & 0x100000) == 0)" ( (binary_expression "(uVar23 & 0x100000) == 0" (parenthesized_expression "(uVar23 & 0x100000)" ( (binary_expression "uVar23 & 0x100000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        local_c0._0_4_ = uVar26;\n      }" { (expression_statement "local_c0._0_4_ = uVar26;" (assignment_expression "local_c0._0_4_ = uVar26" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) })) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {\n          in_stack_fffffffffffffee0 = local_98[1]._M_next;\n          VVar20 = *(Value *)&local_98[2]._M_prev;\n          uVar23 = *(uint *)&in_stack_fffffffffffffee0->_M_next;\n          in_stack_fffffffffffffed8 = (_List_node_base *)(ulong)uVar23;\n          uVar26 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8;\n          if (*(char *)((long)&local_98[3]._M_next + 4) != '\0') {\n            VVar20 = (uint)local_c0 + uVar26 * 0x10000;\n          }\n          iVar25 = *(int *)&local_98[3]._M_prev;\n          VVar20 = gold::Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {\n          in_stack_fffffffffffffee0 = local_98[1]._M_next;\n          VVar20 = *(Value *)&local_98[2]._M_prev;\n          uVar23 = *(uint *)&in_stack_fffffffffffffee0->_M_next;\n          in_stack_fffffffffffffed8 = (_List_node_base *)(ulong)uVar23;\n          uVar26 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8;\n          if (*(char *)((long)&local_98[3]._M_next + 4) != '\0') {\n            VVar20 = (uint)local_c0 + uVar26 * 0x10000;\n          }\n          iVar25 = *(int *)&local_98[3]._M_prev;\n          VVar20 = gold::Symbol_value<32>::value" (binary_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {\n          in_stack_fffffffffffffee0 = local_98[1]._M_next;\n          VVar20 = *(Value *)&local_98[2]._M_prev;\n          uVar23 = *(uint *)&in_stack_fffffffffffffee0->_M_next;\n          in_stack_fffffffffffffed8 = (_List_node_base *)(ulong)uVar23;\n          uVar26 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8;\n          if (*(char *)((long)&local_98[3]._M_next + 4) != '\0') {\n            VVar20 = (uint)local_c0 + uVar26 * 0x10000;\n          }\n          iVar25 = *(int *)&local_98[3]._M_prev;\n          VVar20 = gold::Symbol_value<32" (binary_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {\n          in_stack_fffffffffffffee0 = local_98[1]._M_next;\n          VVar20 = *(Value *)&local_98[2]._M_prev;\n          uVar23 = *(uint *)&in_stack_fffffffffffffee0->_M_next;\n          in_stack_fffffffffffffed8 = (_List_node_base *)(ulong)uVar23;\n          uVar26 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8;\n          if (*(char *)((long)&local_98[3]._M_next + 4) != '\0') {\n            VVar20 = (uint)local_c0 + uVar26 * 0x10000;\n          }\n          iVar25 = *(int *)&local_98[3]._M_prev" (assignment_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {\n          in_stack_fffffffffffffee0 = local_98[1]._M_next;\n          VVar20 = *(Value *)&local_98[2]._M_prev;\n          uVar23 = *(uint *)&in_stack_fffffffffffffee0->_M_next;\n          in_stack_fffffffffffffed8 = (_List_node_base *)(ulong)uVar23;\n          uVar26 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8;\n          if (*(char *)((long)&local_98[3]._M_next + 4) != '\0') {\n            VVar20 = (uint)local_c0 + uVar26 * 0x10000" (call_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {\n          in_stack_fffffffffffffee0 = local_98[1]._M_next;\n          VVar20 = *(Value *)&local_98[2]._M_prev;\n          uVar23 = *(uint *)&in_stack_fffffffffffffee0->_M_next;\n          in_stack_fffffffffffffed8 = (_List_node_base *)(ulong)uVar23;\n          uVar26 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8;\n          if (*(char *)((long)&local_98[3]._M_next + 4) != '\0')" (assignment_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {\n          in_stack_fffffffffffffee0 = local_98[1]._M_next;\n          VVar20 = *(Value *)&local_98[2]._M_prev;\n          uVar23 = *(uint *)&in_stack_fffffffffffffee0->_M_next;\n          in_stack_fffffffffffffed8 = (_List_node_base *)(ulong)uVar23;\n          uVar26 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8" (call_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {\n          in_stack_fffffffffffffee0 = local_98[1]._M_next;\n          VVar20 = *(Value *)&local_98[2]._M_prev;\n          uVar23 = *(uint *)&in_stack_fffffffffffffee0->_M_next;\n          in_stack_fffffffffffffed8 = (_List_node_base *)(ulong)" (call_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {\n          in_stack_fffffffffffffee0 = local_98[1]._M_next;\n          VVar20 = *(Value *)&local_98[2]._M_prev;\n          uVar23 = *(uint *)&in_stack_fffffffffffffee0->_M_next;\n          in_stack_fffffffffffffed8 = (_List_node_base *)" (binary_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {\n          in_stack_fffffffffffffee0 = local_98[1]._M_next;\n          VVar20 = *(Value *)&local_98[2]._M_prev;\n          uVar23 = *(uint *)&in_stack_fffffffffffffee0->_M_next" (binary_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {\n          in_stack_fffffffffffffee0 = local_98[1]._M_next;\n          VVar20 = *(Value *)&local_98[2]._M_prev" (assignment_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {\n          in_stack_fffffffffffffee0 = local_98[1]._M_next" (call_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))\n    {\n      do {\n        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next)" (call_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49;\n    }\n    if ((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))" (assignment_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_ = uVar49" (field_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {\n      local_c0._0_4_" (call_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8;\n    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0))" (assignment_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_ = local_c8" (field_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23;\n    local_c0._0_4_" (binary_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18 | uVar23" (binary_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8;\n    uVar49 = uVar21 >> 0x18" (binary_expression "Symbol_value<32>::value<true>\n                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8" (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > (assignment_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)view;\n    uVar23 = (uVar21 & 0xff0000) >> 8" (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else {\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }\n    break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *)" ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar26 = VVar20 - address;\n    uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63) {\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }\n    goto LAB_002c59a8;\n  case 0x40:\n    bVar61 = false;\nswitchD_002c5379_caseD_40:\n    if (rel_type == 4) {\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }\n    else" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (assignment_expression "uVar26 = VVar20 - address" identifier = (binary_expression "VVar20 - address" identifier - identifier)) ; (call_expression "uVar23 = uVar26 >> 2;\n    if (!bVar62 || !bVar63)" (assignment_expression "uVar23 = uVar26 >> 2" identifier = (binary_expression "uVar26 >> 2" identifier >> number_literal)) (ERROR ";\n    if" ; if) (argument_list "(!bVar62 || !bVar63)" ( (binary_expression "!bVar62 || !bVar63" (unary_expression "!bVar62" ! identifier) || (unary_expression "!bVar63" ! identifier)) ))) (compound_statement "{\n      uVar49 = uVar49 ^ uVar23;\n      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n      uVar21 = VVar20 & 3;\n      goto joined_r0x002c6ec7;\n    }" { (expression_statement "uVar49 = uVar49 ^ uVar23;" (assignment_expression "uVar49 = uVar49 ^ uVar23" identifier = (binary_expression "uVar49 ^ uVar23" identifier ^ identifier)) ;) (expression_statement "*(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);" (assignment_expression "*(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18)" (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18)" identifier ^ (parenthesized_expression "((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18)" ( (binary_expression "(uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18" (binary_expression "(uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8" (binary_expression "(uVar49 & 0x70000) >> 8" (parenthesized_expression "(uVar49 & 0x70000)" ( (binary_expression "uVar49 & 0x70000" identifier & number_literal) )) >> number_literal) | (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar49 << 0x18" identifier << number_literal)) )))) ;) (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true" (binary_expression "VVar20 = gold::Symbol_value<32>::value" (binary_expression "VVar20 = gold::Symbol_value<32" (assignment_expression "VVar20 = gold" identifier = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ))) ;) (expression_statement "uVar21 = VVar20 & 3;" (assignment_expression "uVar21 = VVar20 & 3" identifier = (binary_expression "VVar20 & 3" identifier & number_literal)) ;) (goto_statement "goto joined_r0x002c6ec7;" goto statement_identifier ;) }) goto identifier ; case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; (call_expression "switchD_002c5379_caseD_40:\n    if (rel_type == 4)" identifier (ERROR ":\n    if" : if) (argument_list "(rel_type == 4)" ( (binary_expression "rel_type == 4" identifier == number_literal) ))) (compound_statement "{\n      uVar21 = *(uint *)view;\n      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n      VVar20 = uVar49 << 0x10;\n      if (bVar61 == false) {\n        VVar20 = local_c8;\n      }\n      object = (_List_node_base **)this_00;\n      VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);\n      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;\n      if ((bool)cVar47) goto LAB_002c59a8;\n      uVar23 = uVar23 ^ uVar49;\n      SVar27 = STATUS_OKAY;\n      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;\n    }" { (expression_statement "uVar21 = *(uint *)view;" (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;" (assignment_expression "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "VVar20 = uVar49 << 0x10;" (assignment_expression "VVar20 = uVar49 << 0x10" identifier = (binary_expression "uVar49 << 0x10" identifier << number_literal)) ;) (if_statement "if (bVar61 == false) {\n        VVar20 = local_c8;\n      }" if (parenthesized_expression "(bVar61 == false)" ( (binary_expression "bVar61 == false" identifier == false) )) (compound_statement "{\n        VVar20 = local_c8;\n      }" { (expression_statement "VVar20 = local_c8;" (assignment_expression "VVar20 = local_c8" identifier = identifier) ;) })) (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true>\n                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20)" (binary_expression "VVar20 = gold::Symbol_value<32>::value<true" (binary_expression "VVar20 = gold::Symbol_value<32>::value" (binary_expression "VVar20 = gold::Symbol_value<32" (assignment_expression "VVar20 = gold" identifier = identifier) (ERROR "::Symbol_value" : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > (parenthesized_expression "(psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20)" ( (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,VVar20)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,VVar20" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,VVar20" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , identifier)) ))) ))) ;) (expression_statement "uVar23 = (VVar20 - address) + 0x8000 >> 0x10;" (assignment_expression "uVar23 = (VVar20 - address) + 0x8000 >> 0x10" identifier = (binary_expression "(VVar20 - address) + 0x8000 >> 0x10" (binary_expression "(VVar20 - address) + 0x8000" (parenthesized_expression "(VVar20 - address)" ( (binary_expression "VVar20 - address" identifier - identifier) )) + number_literal) >> number_literal)) ;) (if_statement "if ((bool)cVar47) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar23 = uVar23 ^ uVar49;" (assignment_expression "uVar23 = uVar23 ^ uVar49" identifier = (binary_expression "uVar23 ^ uVar49" identifier ^ identifier)) ;) (expression_statement "SVar27 = STATUS_OKAY;" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ;) (expression_statement "*(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;" (assignment_expression "*(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21" (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21" (parenthesized_expression "((uVar23 & 0xff00) << 8 | uVar23 << 0x18)" ( (binary_expression "(uVar23 & 0xff00) << 8 | uVar23 << 0x18" (binary_expression "(uVar23 & 0xff00) << 8" (parenthesized_expression "(uVar23 & 0xff00)" ( (binary_expression "uVar23 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar23 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) }) else) (compound_statement "{\n      if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }\n      p_Var31 = (_List_node_base *)operator_new(0x40);\n      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;\n      SVar27 = STATUS_OKAY;\n      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;\n      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;\n      p_Var31[1]._M_next = (_List_node_base *)view;\n      p_Var31[1]._M_prev = (_List_node_base *)this_00;\n      p_Var31[2]._M_next = (_List_node_base *)psymval;\n      *(uint *)&p_Var31[2]._M_prev = local_c8;\n      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;\n      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;\n      *(Mips_address *)&p_Var31[3]._M_prev = address;\n      std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n      _DAT_0067db10 = _DAT_0067db10 + 1;\n    }" { (if_statement "if (rel_type != 9) {\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }" if (parenthesized_expression "(rel_type != 9)" ( (binary_expression "rel_type != 9" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");\n      }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");" (call_expression "do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2eda,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;)) })) (expression_statement "p_Var31 = (_List_node_base *)operator_new(0x40);" (assignment_expression "p_Var31 = (_List_node_base *)operator_new(0x40)" identifier = (cast_expression "(_List_node_base *)operator_new(0x40)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "operator_new(0x40)" identifier (argument_list "(0x40)" ( number_literal ))))) ;) (expression_statement "*(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;" (assignment_expression "*(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0" (pointer_expression "*(undefined1 *)((long)&p_Var31[3]._M_prev + 4)" * (cast_expression "(undefined1 *)((long)&p_Var31[3]._M_prev + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&p_Var31[3]._M_prev + 4)" ( (binary_expression "(long)&p_Var31[3]._M_prev + 4" (cast_expression "(long)&p_Var31[3]._M_prev" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&p_Var31[3]._M_prev" & (field_expression "p_Var31[3]._M_prev" (subscript_expression "p_Var31[3]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "SVar27 = STATUS_OKAY;" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ;) (expression_statement "*(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;" (assignment_expression "*(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0" (pointer_expression "*(undefined4 *)((long)&p_Var31[2]._M_prev + 4)" * (cast_expression "(undefined4 *)((long)&p_Var31[2]._M_prev + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&p_Var31[2]._M_prev + 4)" ( (binary_expression "(long)&p_Var31[2]._M_prev + 4" (cast_expression "(long)&p_Var31[2]._M_prev" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&p_Var31[2]._M_prev" & (field_expression "p_Var31[2]._M_prev" (subscript_expression "p_Var31[2]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;" (comma_expression "object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs" (binary_expression "object = &(anonymous_namespace)::Mips_relocate_functions<32" (assignment_expression "object = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (binary_expression "true>::pchi16_relocs" true > (ERROR "::" : :) identifier)) ;) (expression_statement "p_Var31[1]._M_next = (_List_node_base *)view;" (assignment_expression "p_Var31[1]._M_next = (_List_node_base *)view" (field_expression "p_Var31[1]._M_next" (subscript_expression "p_Var31[1]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(_List_node_base *)view" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "p_Var31[1]._M_prev = (_List_node_base *)this_00;" (assignment_expression "p_Var31[1]._M_prev = (_List_node_base *)this_00" (field_expression "p_Var31[1]._M_prev" (subscript_expression "p_Var31[1]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(_List_node_base *)this_00" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "p_Var31[2]._M_next = (_List_node_base *)psymval;" (assignment_expression "p_Var31[2]._M_next = (_List_node_base *)psymval" (field_expression "p_Var31[2]._M_next" (subscript_expression "p_Var31[2]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(_List_node_base *)psymval" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "*(uint *)&p_Var31[2]._M_prev = local_c8;" (assignment_expression "*(uint *)&p_Var31[2]._M_prev = local_c8" (pointer_expression "*(uint *)&p_Var31[2]._M_prev" * (cast_expression "(uint *)&p_Var31[2]._M_prev" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&p_Var31[2]._M_prev" & (field_expression "p_Var31[2]._M_prev" (subscript_expression "p_Var31[2]" identifier [ number_literal ]) . field_identifier)))) = identifier) ;) (expression_statement "*(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;" (assignment_expression "*(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14" (pointer_expression "*(_Rb_tree_color *)&p_Var31[3]._M_next" * (cast_expression "(_Rb_tree_color *)&p_Var31[3]._M_next" ( (type_descriptor "_Rb_tree_color *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&p_Var31[3]._M_next" & (field_expression "p_Var31[3]._M_next" (subscript_expression "p_Var31[3]" identifier [ number_literal ]) . field_identifier)))) = identifier) ;) (expression_statement "*(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;" (assignment_expression "*(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61" (pointer_expression "*(bool *)((long)&p_Var31[3]._M_next + 4)" * (cast_expression "(bool *)((long)&p_Var31[3]._M_next + 4)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&p_Var31[3]._M_next + 4)" ( (binary_expression "(long)&p_Var31[3]._M_next + 4" (cast_expression "(long)&p_Var31[3]._M_next" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&p_Var31[3]._M_next" & (field_expression "p_Var31[3]._M_next" (subscript_expression "p_Var31[3]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "*(Mips_address *)&p_Var31[3]._M_prev = address;" (assignment_expression "*(Mips_address *)&p_Var31[3]._M_prev = address" (pointer_expression "*(Mips_address *)&p_Var31[3]._M_prev" * (cast_expression "(Mips_address *)&p_Var31[3]._M_prev" ( (type_descriptor "Mips_address *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&p_Var31[3]._M_prev" & (field_expression "p_Var31[3]._M_prev" (subscript_expression "p_Var31[3]" identifier [ number_literal ]) . field_identifier)))) = identifier) ;) (labeled_statement "std::__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);" statement_identifier : (ERROR ":" :) (labeled_statement "__detail::_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);" statement_identifier : (ERROR ":" :) (labeled_statement "_List_node_base::_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);" statement_identifier : (ERROR ":" :) (expression_statement "_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);" (call_expression "_M_hook\n                (p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs)" identifier (argument_list "(p_Var31,(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs)" ( identifier , (binary_expression "(_List_node_base *)\n                         &(anonymous_namespace)::Mips_relocate_functions<32" (cast_expression "(_List_node_base *)\n                         &(anonymous_namespace)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (binary_expression "true>::pchi16_relocs" true > (ERROR "::" : :) identifier) ))) ;)))) (expression_statement "_DAT_0067db10 = _DAT_0067db10 + 1;" (assignment_expression "_DAT_0067db10 = _DAT_0067db10 + 1" identifier = (binary_expression "_DAT_0067db10 + 1" identifier + number_literal)) ;) }) (ERROR "break;\n  case 0x41:\n    bVar61 = false;\nLAB_002c6ccf:\n    uVar21 = *(uint *" break ; case number_literal : identifier = false ; identifier : identifier = * ( identifier *) )) (ERROR "view;\n    uVar23" identifier ; identifier) = (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal))) (ERROR ";\n    uVar49 = uVar21" ; identifier = identifier) >> number_literal) | identifier) (ERROR ";\n    local_c0" ; identifier) . field_identifier) = identifier) (ERROR ";\n    if" ; if) (argument_list "((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0))" ( (binary_expression "(bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)" (parenthesized_expression "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) )) && (parenthesized_expression "(local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)" ( (comma_expression "local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0" (assignment_expression "local_c0._0_4_ = uVar49 - 0x10000" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar49 - 0x10000" identifier - number_literal)) , (binary_expression "(uVar23 & 0x8000) == 0" (parenthesized_expression "(uVar23 & 0x8000)" ( (binary_expression "uVar23 & 0x8000" identifier & number_literal) )) == number_literal)) ))) ))) (ERROR "{\n      local_c0" { identifier) . field_identifier) = identifier) (ERROR ";\n    }\n    if" ; } if) (argument_list "((rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))" ( (binary_expression "(rel_type == 9) &&\n       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs)" (parenthesized_expression "(rel_type == 9)" ( (binary_expression "rel_type == 9" identifier == number_literal) )) && (parenthesized_expression "(local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs)" ( (ERROR "local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)::" (comma_expression "local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,\n       (anonymous_namespace)" (binary_expression "local_98 = (anonymous_namespace)::Mips_relocate_functions<32" (assignment_expression "local_98 = (anonymous_namespace)" identifier = (parenthesized_expression "(anonymous_namespace)" ( identifier ))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (comma_expression "true>::pchi16_relocs,\n       (anonymous_namespace)" (binary_expression "true>::pchi16_relocs" true > (ERROR "::" : :) identifier) , (parenthesized_expression "(anonymous_namespace)" ( identifier )))) : : (comma_expression "Mips_relocate_functions<32,true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)" (binary_expression "Mips_relocate_functions<32" identifier < number_literal) , (binary_expression "true>::pchi16_relocs !=\n       (_List_node_base *)&(anonymous_namespace)" (binary_expression "true>::pchi16_relocs" true > (ERROR "::" : :) identifier) != (cast_expression "(_List_node_base *)&(anonymous_namespace)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))))) : :) (comma_expression "Mips_relocate_functions<32,true>::pchi16_relocs" (binary_expression "Mips_relocate_functions<32" identifier < number_literal) , (binary_expression "true>::pchi16_relocs" true > (ERROR "::" : :) identifier)) ))) ))) (ERROR "{\n      do {\n        if" { do { if) (argument_list "(_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next)" ( (binary_expression "_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next" identifier == (pointer_expression "*(_Rb_tree_color *)&local_98[3]._M_next" * (cast_expression "(_Rb_tree_color *)&local_98[3]._M_next" ( (type_descriptor "_Rb_tree_color *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_98[3]._M_next" & (field_expression "local_98[3]._M_next" (subscript_expression "local_98[3]" identifier [ number_literal ]) . field_identifier))))) ))) (ERROR "{\n          in_stack_fffffffffffffee0" { identifier) = (field_expression "local_98[1]._M_next" (subscript_expression "local_98[1]" identifier [ number_literal ]) . field_identifier)) (ERROR ";\n          VVar20 =" ; identifier =) * (cast_expression "(Value *)&local_98[2]._M_prev" ( (type_descriptor "Value *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_98[2]._M_prev" & (field_expression "local_98[2]._M_prev" (subscript_expression "local_98[2]" identifier [ number_literal ]) . field_identifier)))) (ERROR ";\n          uVar23 =" ; identifier =) * (cast_expression "(uint *)&in_stack_fffffffffffffee0->_M_next" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&in_stack_fffffffffffffee0->_M_next" & (field_expression "in_stack_fffffffffffffee0->_M_next" identifier -> field_identifier)))) (ERROR ";\n          in_stack_fffffffffffffed8 =" ; identifier =) (argument_list "(_List_node_base *)" ( (binary_expression "_List_node_base *" identifier * identifier) ))) (argument_list "(ulong)" ( identifier ))) (ERROR "uVar23;\n          uVar26" identifier ; identifier) = (binary_expression "uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8" (binary_expression "uVar23 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar23 & 0xff0000) >> 8" (parenthesized_expression "(uVar23 & 0xff0000)" ( (binary_expression "uVar23 & 0xff0000" identifier & number_literal) )) >> number_literal))) (ERROR ";\n          if" ; if) (argument_list "(*(char *)((long)&local_98[3]._M_next + 4) != '\0')" ( (binary_expression "*(char *)((long)&local_98[3]._M_next + 4) != '\0'" (pointer_expression "*(char *)((long)&local_98[3]._M_next + 4)" * (cast_expression "(char *)((long)&local_98[3]._M_next + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&local_98[3]._M_next + 4)" ( (binary_expression "(long)&local_98[3]._M_next + 4" (cast_expression "(long)&local_98[3]._M_next" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&local_98[3]._M_next" & (field_expression "local_98[3]._M_next" (subscript_expression "local_98[3]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) ))) (ERROR "{\n            VVar20" { identifier) = (binary_expression "(uint)local_c0 + uVar26 * 0x10000" (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier) + (binary_expression "uVar26 * 0x10000" identifier * number_literal))) (ERROR ";\n          }\n          iVar25 =" ; } identifier =) * (cast_expression "(int *)&local_98[3]._M_prev" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_98[3]._M_prev" & (field_expression "local_98[3]._M_prev" (subscript_expression "local_98[3]" identifier [ number_literal ]) . field_identifier)))) (ERROR ";\n          VVar20 = gold::Symbol_value" ; identifier = identifier : : identifier) < number_literal) > (ERROR "::" : :) identifier) < true) > ( ( (ERROR "Symbol_value<32> *)local_98[2]._M_next,\n                              (Sized_relobj_file<32,_true> *)local_98[1]._M_prev,VVar20);\n          uVar41 = (0x8000 - iVar25) + VVar20 >> 0x10;\n          if (bVar62 && bVar63) {\n            this->calculated_value_ = uVar41;\n          }\n          else {\n            uVar41 = uVar41 ^ uVar26;\n            *(uint *)&in_stack_fffffffffffffee0->_M_next =\n                 ((uVar41 & 0xff00) << 8 | uVar41 << 0x18) ^ uVar23;\n          }\n          in_stack_fffffffffffffee8 = local_98->_M_next;\n          _DAT_0067db10 = _DAT_0067db10 + -1;\n          std::__detail::_List_node_base::_M_unhook(local_98);\n          operator_delete(local_98);\n          local_98 = in_stack_fffffffffffffee8;\n        }\n        else {\n          local_98 = local_98->_M_next;\n        }\n      } while (local_98 !=\n               (_List_node_base *)\n               &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "Symbol_value<32> *)local_98[2]._M_next,\n                              (Sized_relobj_file<32,_true> *)local_98[1]._M_prev,VVar20)" (binary_expression "Symbol_value<32> *)local_98[2]._M_next" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)local_98[2]._M_next" * (ERROR ")" )) (field_expression "local_98[2]._M_next" (subscript_expression "local_98[2]" identifier [ number_literal ]) . field_identifier))) , (parenthesized_expression "(Sized_relobj_file<32,_true> *)local_98[1]._M_prev,VVar20)" ( (comma_expression "Sized_relobj_file<32,_true> *)local_98[1]._M_prev,VVar20" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)local_98[1]._M_prev,VVar20" (binary_expression "_true> *)local_98[1]._M_prev" identifier > (pointer_expression "*)local_98[1]._M_prev" * (ERROR ")" )) (field_expression "local_98[1]._M_prev" (subscript_expression "local_98[1]" identifier [ number_literal ]) . field_identifier))) , identifier)) ))) ; (call_expression "uVar41 = (0x8000 - iVar25) + VVar20 >> 0x10;\n          if (bVar62 && bVar63)" (assignment_expression "uVar41 = (0x8000 - iVar25) + VVar20 >> 0x10" identifier = (binary_expression "(0x8000 - iVar25) + VVar20 >> 0x10" (binary_expression "(0x8000 - iVar25) + VVar20" (parenthesized_expression "(0x8000 - iVar25)" ( (binary_expression "0x8000 - iVar25" number_literal - identifier) )) + identifier) >> number_literal)) (ERROR ";\n          if" ; if) (argument_list "(bVar62 && bVar63)" ( (binary_expression "bVar62 && bVar63" identifier && identifier) ))) (compound_statement "{\n            this->calculated_value_ = uVar41;\n          }" { (expression_statement "this->calculated_value_ = uVar41;" (assignment_expression "this->calculated_value_ = uVar41" (field_expression "this->calculated_value_" identifier -> field_identifier) = identifier) ;) }) else (compound_statement "{\n            uVar41 = uVar41 ^ uVar26;\n            *(uint *)&in_stack_fffffffffffffee0->_M_next =\n                 ((uVar41 & 0xff00) << 8 | uVar41 << 0x18) ^ uVar23;\n          }" { (expression_statement "uVar41 = uVar41 ^ uVar26;" (assignment_expression "uVar41 = uVar41 ^ uVar26" identifier = (binary_expression "uVar41 ^ uVar26" identifier ^ identifier)) ;) (expression_statement "*(uint *)&in_stack_fffffffffffffee0->_M_next =\n                 ((uVar41 & 0xff00) << 8 | uVar41 << 0x18) ^ uVar23;" (assignment_expression "*(uint *)&in_stack_fffffffffffffee0->_M_next =\n                 ((uVar41 & 0xff00) << 8 | uVar41 << 0x18) ^ uVar23" (pointer_expression "*(uint *)&in_stack_fffffffffffffee0->_M_next" * (cast_expression "(uint *)&in_stack_fffffffffffffee0->_M_next" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&in_stack_fffffffffffffee0->_M_next" & (field_expression "in_stack_fffffffffffffee0->_M_next" identifier -> field_identifier)))) = (binary_expression "((uVar41 & 0xff00) << 8 | uVar41 << 0x18) ^ uVar23" (parenthesized_expression "((uVar41 & 0xff00) << 8 | uVar41 << 0x18)" ( (binary_expression "(uVar41 & 0xff00) << 8 | uVar41 << 0x18" (binary_expression "(uVar41 & 0xff00) << 8" (parenthesized_expression "(uVar41 & 0xff00)" ( (binary_expression "uVar41 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar41 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) }) (assignment_expression "in_stack_fffffffffffffee8 = local_98->_M_next" identifier = (field_expression "local_98->_M_next" identifier -> field_identifier)) ; (assignment_expression "_DAT_0067db10 = _DAT_0067db10 + -1" identifier = (binary_expression "_DAT_0067db10 + -1" identifier + number_literal)) ; identifier : : identifier : : identifier : : (call_expression "_M_unhook(local_98)" identifier (argument_list "(local_98)" ( identifier ))) ; (call_expression "operator_delete(local_98)" identifier (argument_list "(local_98)" ( identifier ))) ; (assignment_expression "local_98 = in_stack_fffffffffffffee8" identifier = identifier) ; } else (compound_statement "{\n          local_98 = local_98->_M_next;\n        }" { (expression_statement "local_98 = local_98->_M_next;" (assignment_expression "local_98 = local_98->_M_next" identifier = (field_expression "local_98->_M_next" identifier -> field_identifier)) ;) }) } while (parenthesized_expression "(local_98 !=\n               (_List_node_base *)\n               &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs)" ( (comma_expression "local_98 !=\n               (_List_node_base *)\n               &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs" (binary_expression "local_98 !=\n               (_List_node_base *)\n               &(anonymous_namespace)::Mips_relocate_functions<32" (binary_expression "local_98 !=\n               (_List_node_base *)\n               &(anonymous_namespace)" identifier != (cast_expression "(_List_node_base *)\n               &(anonymous_namespace)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier ))))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (binary_expression "true>::pchi16_relocs" true > (ERROR "::" : :) identifier)) )) ; } (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address;\n    if ((bool)cVar47) goto LAB_002c59a8;\n    SVar27 = STATUS_OKAY;\n    *(uint *)view = (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18) ^ uVar21;\n    break;\n  case 0x8b:\n    bVar61 = false;\nLAB_002c6bb8:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 2;\n      uVar26 = uVar23 & 0xff;\n      local_c0._0_4_ = uVar26 - 0x100;\n      if ((uVar23 & 0x80) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (call_expression "uVar23 = VVar20 - address;\n    if ((bool)cVar47)" (assignment_expression "uVar23 = VVar20 - address" identifier = (binary_expression "VVar20 - address" identifier - identifier)) (ERROR ";\n    if" ; if) (argument_list "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) ))) identifier identifier ; (binary_expression "SVar27 = STATUS_OKAY;\n    *(uint *)view = (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18) ^ uVar21" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) (ERROR ";" ;) * (cast_expression "(uint *)view = (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18) ^ uVar21" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "view = (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18) ^ uVar21" identifier = (binary_expression "(((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18) ^ uVar21" (parenthesized_expression "(((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18)" ( (binary_expression "((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18" (binary_expression "((uVar23 ^ uVar49) & 0xff00) << 8" (parenthesized_expression "((uVar23 ^ uVar49) & 0xff00)" ( (binary_expression "(uVar23 ^ uVar49) & 0xff00" (parenthesized_expression "(uVar23 ^ uVar49)" ( (binary_expression "uVar23 ^ uVar49" identifier ^ identifier) )) & number_literal) )) << number_literal) | (binary_expression "(uVar23 ^ uVar49) << 0x18" (parenthesized_expression "(uVar23 ^ uVar49)" ( (binary_expression "uVar23 ^ uVar49" identifier ^ identifier) )) << number_literal)) )) ^ identifier)))) ; break ; case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar21 >> 0x18" identifier = (binary_expression "uVar21 >> 0x18" identifier >> number_literal)) ; (call_expression "local_c0._0_4_ = local_c8;\n    if (bVar61 != false)" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) ))) (compound_statement "{\n      uVar23 = uVar49 * 2;\n      uVar26 = uVar23 & 0xff;\n      local_c0._0_4_ = uVar26 - 0x100;\n      if ((uVar23 & 0x80) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }" { (expression_statement "uVar23 = uVar49 * 2;" (assignment_expression "uVar23 = uVar49 * 2" identifier = (binary_expression "uVar49 * 2" identifier * number_literal)) ;) (expression_statement "uVar26 = uVar23 & 0xff;" (assignment_expression "uVar26 = uVar23 & 0xff" identifier = (binary_expression "uVar23 & 0xff" identifier & number_literal)) ;) (expression_statement "local_c0._0_4_ = uVar26 - 0x100;" (assignment_expression "local_c0._0_4_ = uVar26 - 0x100" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar26 - 0x100" identifier - number_literal)) ;) (if_statement "if ((uVar23 & 0x80) == 0) {\n        local_c0._0_4_ = uVar26;\n      }" if (parenthesized_expression "((uVar23 & 0x80) == 0)" ( (binary_expression "(uVar23 & 0x80) == 0" (parenthesized_expression "(uVar23 & 0x80)" ( (binary_expression "uVar23 & 0x80" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        local_c0._0_4_ = uVar26;\n      }" { (expression_statement "local_c0._0_4_ = uVar26;" (assignment_expression "local_c0._0_4_ = uVar26" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) })) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address >> 1;\n    if ((bool)cVar47) {\nLAB_002c78e8:\n      SVar27 = STATUS_OKAY;\n      this->calculated_value_ = uVar23;\n    }\n    else {\n      *(uint *)view = uVar21 ^ ((uVar23 ^ uVar49) & 0x7f) << 0x18;\n      SVar27 = (Status)(0xff < (VVar20 - address) + 0x80);\n    }\n    break;\n  case 0x8c:\n    bVar61 = false;\nLAB_002c6c3e:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 2;\n      uVar26 = uVar23 & 0x7fe;\n      local_c0._0_4_ = uVar26 - 0x800;\n      if ((uVar23 & 0x400) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (call_expression "uVar23 = VVar20 - address >> 1;\n    if ((bool)cVar47)" (assignment_expression "uVar23 = VVar20 - address >> 1" identifier = (binary_expression "VVar20 - address >> 1" (binary_expression "VVar20 - address" identifier - identifier) >> number_literal)) (ERROR ";\n    if" ; if) (argument_list "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) ))) (compound_statement "{\nLAB_002c78e8:\n      SVar27 = STATUS_OKAY;\n      this->calculated_value_ = uVar23;\n    }" { (labeled_statement "LAB_002c78e8:\n      SVar27 = STATUS_OKAY;" statement_identifier : (expression_statement "SVar27 = STATUS_OKAY;" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ;)) (expression_statement "this->calculated_value_ = uVar23;" (assignment_expression "this->calculated_value_ = uVar23" (field_expression "this->calculated_value_" identifier -> field_identifier) = identifier) ;) }) else (compound_statement "{\n      *(uint *)view = uVar21 ^ ((uVar23 ^ uVar49) & 0x7f) << 0x18;\n      SVar27 = (Status)(0xff < (VVar20 - address) + 0x80);\n    }" { (expression_statement "*(uint *)view = uVar21 ^ ((uVar23 ^ uVar49) & 0x7f) << 0x18;" (assignment_expression "*(uint *)view = uVar21 ^ ((uVar23 ^ uVar49) & 0x7f) << 0x18" (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar21 ^ ((uVar23 ^ uVar49) & 0x7f) << 0x18" identifier ^ (binary_expression "((uVar23 ^ uVar49) & 0x7f) << 0x18" (parenthesized_expression "((uVar23 ^ uVar49) & 0x7f)" ( (binary_expression "(uVar23 ^ uVar49) & 0x7f" (parenthesized_expression "(uVar23 ^ uVar49)" ( (binary_expression "uVar23 ^ uVar49" identifier ^ identifier) )) & number_literal) )) << number_literal))) ;) (expression_statement "SVar27 = (Status)(0xff < (VVar20 - address) + 0x80);" (assignment_expression "SVar27 = (Status)(0xff < (VVar20 - address) + 0x80)" identifier = (call_expression "(Status)(0xff < (VVar20 - address) + 0x80)" (parenthesized_expression "(Status)" ( identifier )) (argument_list "(0xff < (VVar20 - address) + 0x80)" ( (binary_expression "0xff < (VVar20 - address) + 0x80" number_literal < (binary_expression "(VVar20 - address) + 0x80" (parenthesized_expression "(VVar20 - address)" ( (binary_expression "VVar20 - address" identifier - identifier) )) + number_literal)) )))) ;) }) break ; case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal))) ; (call_expression "local_c0._0_4_ = local_c8;\n    if (bVar61 != false)" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) ))) (compound_statement "{\n      uVar23 = uVar49 * 2;\n      uVar26 = uVar23 & 0x7fe;\n      local_c0._0_4_ = uVar26 - 0x800;\n      if ((uVar23 & 0x400) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }" { (expression_statement "uVar23 = uVar49 * 2;" (assignment_expression "uVar23 = uVar49 * 2" identifier = (binary_expression "uVar49 * 2" identifier * number_literal)) ;) (expression_statement "uVar26 = uVar23 & 0x7fe;" (assignment_expression "uVar26 = uVar23 & 0x7fe" identifier = (binary_expression "uVar23 & 0x7fe" identifier & number_literal)) ;) (expression_statement "local_c0._0_4_ = uVar26 - 0x800;" (assignment_expression "local_c0._0_4_ = uVar26 - 0x800" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar26 - 0x800" identifier - number_literal)) ;) (if_statement "if ((uVar23 & 0x400) == 0) {\n        local_c0._0_4_ = uVar26;\n      }" if (parenthesized_expression "((uVar23 & 0x400) == 0)" ( (binary_expression "(uVar23 & 0x400) == 0" (parenthesized_expression "(uVar23 & 0x400)" ( (binary_expression "uVar23 & 0x400" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        local_c0._0_4_ = uVar26;\n      }" { (expression_statement "local_c0._0_4_ = uVar26;" (assignment_expression "local_c0._0_4_ = uVar26" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) })) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address >> 1;\n    if ((bool)cVar47) goto LAB_002c78e8;\n    uVar23 = uVar23 ^ uVar49;\n    *(uint *)view = uVar21 ^ ((uVar23 & 0x300) << 8 | uVar23 << 0x18);\n    SVar27 = (Status)(0x7ff < (VVar20 - address) + 0x400);\n    break;\n  case 0x8d:\n    bVar61 = false;\nLAB_002c69c5:\n    uVar21 = *(uint *)view;\n    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;\n    local_c0._0_4_ = local_c8;\n    if (bVar61 != false) {\n      uVar23 = uVar49 * 2;\n      uVar26 = uVar23 & 0x1fffe;\n      local_c0._0_4_ = uVar26 - 0x20000;\n      if ((uVar23 & 0x10000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (call_expression "uVar23 = VVar20 - address >> 1;\n    if ((bool)cVar47)" (assignment_expression "uVar23 = VVar20 - address >> 1" identifier = (binary_expression "VVar20 - address >> 1" (binary_expression "VVar20 - address" identifier - identifier) >> number_literal)) (ERROR ";\n    if" ; if) (argument_list "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) ))) identifier identifier ; (binary_expression "uVar23 = uVar23 ^ uVar49;\n    *(uint *)view = uVar21 ^ ((uVar23 & 0x300) << 8 | uVar23 << 0x18)" (assignment_expression "uVar23 = uVar23 ^ uVar49" identifier = (binary_expression "uVar23 ^ uVar49" identifier ^ identifier)) (ERROR ";" ;) * (cast_expression "(uint *)view = uVar21 ^ ((uVar23 & 0x300) << 8 | uVar23 << 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "view = uVar21 ^ ((uVar23 & 0x300) << 8 | uVar23 << 0x18)" identifier = (binary_expression "uVar21 ^ ((uVar23 & 0x300) << 8 | uVar23 << 0x18)" identifier ^ (parenthesized_expression "((uVar23 & 0x300) << 8 | uVar23 << 0x18)" ( (binary_expression "(uVar23 & 0x300) << 8 | uVar23 << 0x18" (binary_expression "(uVar23 & 0x300) << 8" (parenthesized_expression "(uVar23 & 0x300)" ( (binary_expression "uVar23 & 0x300" identifier & number_literal) )) << number_literal) | (binary_expression "uVar23 << 0x18" identifier << number_literal)) )))))) ; (assignment_expression "SVar27 = (Status)(0x7ff < (VVar20 - address) + 0x400)" identifier = (call_expression "(Status)(0x7ff < (VVar20 - address) + 0x400)" (parenthesized_expression "(Status)" ( identifier )) (argument_list "(0x7ff < (VVar20 - address) + 0x400)" ( (binary_expression "0x7ff < (VVar20 - address) + 0x400" number_literal < (binary_expression "(VVar20 - address) + 0x400" (parenthesized_expression "(VVar20 - address)" ( (binary_expression "VVar20 - address" identifier - identifier) )) + number_literal)) )))) ; break ; case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ; (assignment_expression "uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal))) ; (call_expression "local_c0._0_4_ = local_c8;\n    if (bVar61 != false)" (assignment_expression "local_c0._0_4_ = local_c8" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) (ERROR ";\n    if" ; if) (argument_list "(bVar61 != false)" ( (binary_expression "bVar61 != false" identifier != false) ))) (compound_statement "{\n      uVar23 = uVar49 * 2;\n      uVar26 = uVar23 & 0x1fffe;\n      local_c0._0_4_ = uVar26 - 0x20000;\n      if ((uVar23 & 0x10000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }\n    }" { (expression_statement "uVar23 = uVar49 * 2;" (assignment_expression "uVar23 = uVar49 * 2" identifier = (binary_expression "uVar49 * 2" identifier * number_literal)) ;) (expression_statement "uVar26 = uVar23 & 0x1fffe;" (assignment_expression "uVar26 = uVar23 & 0x1fffe" identifier = (binary_expression "uVar23 & 0x1fffe" identifier & number_literal)) ;) (expression_statement "local_c0._0_4_ = uVar26 - 0x20000;" (assignment_expression "local_c0._0_4_ = uVar26 - 0x20000" (field_expression "local_c0._0_4_" identifier . field_identifier) = (binary_expression "uVar26 - 0x20000" identifier - number_literal)) ;) (if_statement "if ((uVar23 & 0x10000) == 0) {\n        local_c0._0_4_ = uVar26;\n      }" if (parenthesized_expression "((uVar23 & 0x10000) == 0)" ( (binary_expression "(uVar23 & 0x10000) == 0" (parenthesized_expression "(uVar23 & 0x10000)" ( (binary_expression "uVar23 & 0x10000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        local_c0._0_4_ = uVar26;\n      }" { (expression_statement "local_c0._0_4_ = uVar26;" (assignment_expression "local_c0._0_4_ = uVar26" (field_expression "local_c0._0_4_" identifier . field_identifier) = identifier) ;) })) }) (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address >> 1;\n    if ((bool)cVar47) goto LAB_002c78e8;\n    uVar23 = uVar23 ^ uVar49;\n    *(uint *)view = uVar21 ^ ((uVar23 & 0xff00) << 8 | uVar23 << 0x18);\n    SVar27 = (Status)(0x1ffff < (VVar20 - address) + 0x10000);\n    break;\n  case 0xf8:\n    bVar61 = false;\nLAB_002c6ed9:\n    object = (_List_node_base **)this_00;\n    VVar20 = gold::" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (call_expression "uVar23 = VVar20 - address >> 1;\n    if ((bool)cVar47)" (assignment_expression "uVar23 = VVar20 - address >> 1" identifier = (binary_expression "VVar20 - address >> 1" (binary_expression "VVar20 - address" identifier - identifier) >> number_literal)) (ERROR ";\n    if" ; if) (argument_list "((bool)cVar47)" ( (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) ))) identifier identifier ; (binary_expression "uVar23 = uVar23 ^ uVar49;\n    *(uint *)view = uVar21 ^ ((uVar23 & 0xff00) << 8 | uVar23 << 0x18)" (assignment_expression "uVar23 = uVar23 ^ uVar49" identifier = (binary_expression "uVar23 ^ uVar49" identifier ^ identifier)) (ERROR ";" ;) * (cast_expression "(uint *)view = uVar21 ^ ((uVar23 & 0xff00) << 8 | uVar23 << 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (assignment_expression "view = uVar21 ^ ((uVar23 & 0xff00) << 8 | uVar23 << 0x18)" identifier = (binary_expression "uVar21 ^ ((uVar23 & 0xff00) << 8 | uVar23 << 0x18)" identifier ^ (parenthesized_expression "((uVar23 & 0xff00) << 8 | uVar23 << 0x18)" ( (binary_expression "(uVar23 & 0xff00) << 8 | uVar23 << 0x18" (binary_expression "(uVar23 & 0xff00) << 8" (parenthesized_expression "(uVar23 & 0xff00)" ( (binary_expression "uVar23 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar23 << 0x18" identifier << number_literal)) )))))) ; (assignment_expression "SVar27 = (Status)(0x1ffff < (VVar20 - address) + 0x10000)" identifier = (call_expression "(Status)(0x1ffff < (VVar20 - address) + 0x10000)" (parenthesized_expression "(Status)" ( identifier )) (argument_list "(0x1ffff < (VVar20 - address) + 0x10000)" ( (binary_expression "0x1ffff < (VVar20 - address) + 0x10000" number_literal < (binary_expression "(VVar20 - address) + 0x10000" (parenthesized_expression "(VVar20 - address)" ( (binary_expression "VVar20 - address" identifier - identifier) )) + number_literal)) )))) ; break ; case number_literal : (assignment_expression "bVar61 = false" identifier = false) ; identifier : (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; (assignment_expression "VVar20 = gold" identifier = identifier) : :) (binary_expression "Symbol_value<32>::value<true" (binary_expression "Symbol_value<32>::value" (binary_expression "Symbol_value<32" identifier < number_literal) > (ERROR "::" : :) identifier) < true) > ( (ERROR "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);\n    uVar23 = VVar20 - address;\n    if (!bVar62 || !bVar63) goto LAB_002c5ccb;\nLAB_002c59a8:\n    SVar27 = STATUS_OKAY;\n    this->calculated_value_ = uVar23;\n  }\nLAB_002c5940:\n  iVar25 = (int)object;" (comma_expression "psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" identifier , (parenthesized_expression "(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0)" ( (comma_expression "Sized_relobj_file<32,_true> *)this_00,(uint)local_c0" (binary_expression "Sized_relobj_file<32" identifier < number_literal) , (comma_expression "_true> *)this_00,(uint)local_c0" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (cast_expression "(uint)local_c0" ( (type_descriptor "uint" type_identifier) ) identifier))) ))) ; (call_expression "uVar23 = VVar20 - address;\n    if (!bVar62 || !bVar63)" (assignment_expression "uVar23 = VVar20 - address" identifier = (binary_expression "VVar20 - address" identifier - identifier)) (ERROR ";\n    if" ; if) (argument_list "(!bVar62 || !bVar63)" ( (binary_expression "!bVar62 || !bVar63" (unary_expression "!bVar62" ! identifier) || (unary_expression "!bVar63" ! identifier)) ))) identifier identifier ; identifier : (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ; (assignment_expression "this->calculated_value_ = uVar23" (field_expression "this->calculated_value_" identifier -> field_identifier) = identifier) ; } identifier : (assignment_expression "iVar25 = (int)object" identifier = (cast_expression "(int)object" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (assignment_expression "puVar58 = puVar58 + 1" identifier = (binary_expression "puVar58 + 1" identifier + number_literal)) (ERROR ";\n  if" ; if) ( (ERROR "&symval == (Symbol_value<32> *)puVar58)" (binary_expression "&symval == (Symbol_value<32> *)puVar58)" (pointer_expression "&symval" & identifier) == (parenthesized_expression "(Symbol_value<32> *)puVar58)" ( (binary_expression "Symbol_value<32> *)puVar58" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)puVar58" * (ERROR ")" )) identifier)) )))) (compound_statement "{\nLAB_002c5380:\n    uVar21 = uVar60 - 0x85;\n    if (local_f4 < 0xd) {\n      uVar49 = *(uint *)view;\n      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8;\n      uVar26 = (uVar49 & 0xff00) << 8;\n      uVar41 = uVar49 << 0x18;\n      uVar22 = uVar23 | uVar26 | uVar41;\n      uVar43 = (ulong)uVar22;\n      uVar19 = (ushort)(uVar22 >> 0x10);\n      if (uVar21 < 0x29) {\n        if ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n          uVar19 = uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13);\n          uVar43 = (ulong)((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f);\n        }\n      }\n      else if (((uVar60 == 0x85 || uVar60 == 100) || uVar60 == 4) || (uVar60 != 100)) {\n        if (uVar60 != 100) goto LAB_002c5754;\n        uVar19 = uVar19 >> 5 & 0x1f |\n                 (ushort)(uVar22 >> 0xb) & 0x3e0 | (ushort)(uVar41 >> 0x10) & 0xfc00;\n      }\nLAB_002c5471:\n      uVar38 = (ushort)uVar43 << 8 | (ushort)uVar43 >> 8;\n      iVar25 = (int)CONCAT62((int6)(uVar43 >> 0x10),uVar38);\n      *(ushort *)(view + 2) = uVar38;\n      *(ushort *)view = uVar19 << 8 | uVar19 >> 8;\n    }\n    else if (((uVar21 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) != 0)) &&\n            (1 < uVar60 - 0x8b)) {\n      uVar21 = *(uint *)view;\n      uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n      uVar43 = (ulong)uVar21;\n      uVar19 = (ushort)(uVar21 >> 0x10);\n      goto LAB_002c5471;\n    }\n    if (SVar27 == STATUS_OVERFLOW) {\n      if (gsym == (Sized_symbol<32> *)0x0) {\n        pcVar13 = (((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj).super_Object.name_._M_dataplus._M_p;\n        iVar25 = 0x2c7937;\n        pcVar28 = (char *)gettext("relocation overflow: %u against local symbol %u in %s");\n        gold::gold_error_at_location<32,_true>\n                  (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13);\n      }\n      else {\n        bVar18 = (gsym->super_Symbol).field_0x3a;\n        if ((bVar18 & 7) == 0) {\n          uVar21 = (gsym->super_Symbol).u2_.shndx;\n          if (((gsym->super_Symbol).field_0x3b & 0x20) == 0) {\n            bVar61 = gold::Symbol::is_common_shndx(uVar21);\n            bVar61 = !bVar61;\n          }\n          else {\n            bVar61 = uVar21 != 0;\n          }\n        }\n        else {\n          bVar61 = (bVar18 & 7) != 4;\n        }\n        if ((bVar61) && (((gsym->super_Symbol).field_0x3a & 7) == 0)) {\n          uVar9 = ((gsym->super_Symbol).u1_.output_data)->address_;\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        else {\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        operator_delete(local_58._M_dataplus._M_p);\n      }\n    }\n    else if (SVar27 != STATUS_OKAY) {\n      if (SVar27 == STATUS_BAD_RELOC) {\n        pcVar28 = "unexpected opcode while processing relocation";\n      }\n      else {\n        if (SVar27 != STATUS_PCREL_UNALIGNED) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");\n        }\n        pcVar28 = "unaligned PC-relative relocation";\n      }\n      pcVar28 = (char *)gettext(pcVar28);\n      gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);\n      iVar25 = (int)relnum;\n    }\nLAB_002c53ec:\n    gold::Symbol_value<32>::~Symbol_value(&symval,iVar25);\n    return true;\n  }" { (labeled_statement "LAB_002c5380:\n    uVar21 = uVar60 - 0x85;" statement_identifier : (expression_statement "uVar21 = uVar60 - 0x85;" (assignment_expression "uVar21 = uVar60 - 0x85" identifier = (binary_expression "uVar60 - 0x85" identifier - number_literal)) ;)) (if_statement "if (local_f4 < 0xd) {\n      uVar49 = *(uint *)view;\n      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8;\n      uVar26 = (uVar49 & 0xff00) << 8;\n      uVar41 = uVar49 << 0x18;\n      uVar22 = uVar23 | uVar26 | uVar41;\n      uVar43 = (ulong)uVar22;\n      uVar19 = (ushort)(uVar22 >> 0x10);\n      if (uVar21 < 0x29) {\n        if ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n          uVar19 = uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13);\n          uVar43 = (ulong)((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f);\n        }\n      }\n      else if (((uVar60 == 0x85 || uVar60 == 100) || uVar60 == 4) || (uVar60 != 100)) {\n        if (uVar60 != 100) goto LAB_002c5754;\n        uVar19 = uVar19 >> 5 & 0x1f |\n                 (ushort)(uVar22 >> 0xb) & 0x3e0 | (ushort)(uVar41 >> 0x10) & 0xfc00;\n      }\nLAB_002c5471:\n      uVar38 = (ushort)uVar43 << 8 | (ushort)uVar43 >> 8;\n      iVar25 = (int)CONCAT62((int6)(uVar43 >> 0x10),uVar38);\n      *(ushort *)(view + 2) = uVar38;\n      *(ushort *)view = uVar19 << 8 | uVar19 >> 8;\n    }\n    else if (((uVar21 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) != 0)) &&\n            (1 < uVar60 - 0x8b)) {\n      uVar21 = *(uint *)view;\n      uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n      uVar43 = (ulong)uVar21;\n      uVar19 = (ushort)(uVar21 >> 0x10);\n      goto LAB_002c5471;\n    }" if (parenthesized_expression "(local_f4 < 0xd)" ( (binary_expression "local_f4 < 0xd" identifier < number_literal) )) (compound_statement "{\n      uVar49 = *(uint *)view;\n      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8;\n      uVar26 = (uVar49 & 0xff00) << 8;\n      uVar41 = uVar49 << 0x18;\n      uVar22 = uVar23 | uVar26 | uVar41;\n      uVar43 = (ulong)uVar22;\n      uVar19 = (ushort)(uVar22 >> 0x10);\n      if (uVar21 < 0x29) {\n        if ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n          uVar19 = uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13);\n          uVar43 = (ulong)((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f);\n        }\n      }\n      else if (((uVar60 == 0x85 || uVar60 == 100) || uVar60 == 4) || (uVar60 != 100)) {\n        if (uVar60 != 100) goto LAB_002c5754;\n        uVar19 = uVar19 >> 5 & 0x1f |\n                 (ushort)(uVar22 >> 0xb) & 0x3e0 | (ushort)(uVar41 >> 0x10) & 0xfc00;\n      }\nLAB_002c5471:\n      uVar38 = (ushort)uVar43 << 8 | (ushort)uVar43 >> 8;\n      iVar25 = (int)CONCAT62((int6)(uVar43 >> 0x10),uVar38);\n      *(ushort *)(view + 2) = uVar38;\n      *(ushort *)view = uVar19 << 8 | uVar19 >> 8;\n    }" { (expression_statement "uVar49 = *(uint *)view;" (assignment_expression "uVar49 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8;" (assignment_expression "uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8" identifier = (binary_expression "uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8" (binary_expression "uVar49 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar49 & 0xff0000) >> 8" (parenthesized_expression "(uVar49 & 0xff0000)" ( (binary_expression "uVar49 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar26 = (uVar49 & 0xff00) << 8;" (assignment_expression "uVar26 = (uVar49 & 0xff00) << 8" identifier = (binary_expression "(uVar49 & 0xff00) << 8" (parenthesized_expression "(uVar49 & 0xff00)" ( (binary_expression "uVar49 & 0xff00" identifier & number_literal) )) << number_literal)) ;) (expression_statement "uVar41 = uVar49 << 0x18;" (assignment_expression "uVar41 = uVar49 << 0x18" identifier = (binary_expression "uVar49 << 0x18" identifier << number_literal)) ;) (expression_statement "uVar22 = uVar23 | uVar26 | uVar41;" (assignment_expression "uVar22 = uVar23 | uVar26 | uVar41" identifier = (binary_expression "uVar23 | uVar26 | uVar41" (binary_expression "uVar23 | uVar26" identifier | identifier) | identifier)) ;) (expression_statement "uVar43 = (ulong)uVar22;" (assignment_expression "uVar43 = (ulong)uVar22" identifier = (cast_expression "(ulong)uVar22" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar19 = (ushort)(uVar22 >> 0x10);" (assignment_expression "uVar19 = (ushort)(uVar22 >> 0x10)" identifier = (call_expression "(ushort)(uVar22 >> 0x10)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(uVar22 >> 0x10)" ( (binary_expression "uVar22 >> 0x10" identifier >> number_literal) )))) ;) (if_statement "if (uVar21 < 0x29) {\n        if ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n          uVar19 = uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13);\n          uVar43 = (ulong)((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f);\n        }\n      }\n      else if (((uVar60 == 0x85 || uVar60 == 100) || uVar60 == 4) || (uVar60 != 100)) {\n        if (uVar60 != 100) goto LAB_002c5754;\n        uVar19 = uVar19 >> 5 & 0x1f |\n                 (ushort)(uVar22 >> 0xb) & 0x3e0 | (ushort)(uVar41 >> 0x10) & 0xfc00;\n      }" if (parenthesized_expression "(uVar21 < 0x29)" ( (binary_expression "uVar21 < 0x29" identifier < number_literal) )) (compound_statement "{\n        if ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n          uVar19 = uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13);\n          uVar43 = (ulong)((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f);\n        }\n      }" { (if_statement "if ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n          uVar19 = uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13);\n          uVar43 = (ulong)((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f);\n        }" if (parenthesized_expression "((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) == 0)" ( (binary_expression "(0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) == 0" (parenthesized_expression "(0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1)" ( (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f)" number_literal >> (parenthesized_expression "((ulong)uVar21 & 0x3f)" ( (binary_expression "(ulong)uVar21 & 0x3f" (cast_expression "(ulong)uVar21" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) ))) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_002c5754:\n          uVar19 = uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13);\n          uVar43 = (ulong)((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f);\n        }" { (labeled_statement "LAB_002c5754:\n          uVar19 = uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13);" statement_identifier : (expression_statement "uVar19 = uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13);" (assignment_expression "uVar19 = uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13)" identifier = (binary_expression "uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13)" (binary_expression "uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0" (binary_expression "uVar19 & 0xf800" identifier & number_literal) | (binary_expression "(ushort)uVar23 & 0x7e0" (cast_expression "(ushort)uVar23" ( (type_descriptor "ushort" type_identifier) ) identifier) & number_literal)) | (call_expression "(ushort)((uVar49 & 0xff0000) >> 0x13)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "((uVar49 & 0xff0000) >> 0x13)" ( (binary_expression "(uVar49 & 0xff0000) >> 0x13" (parenthesized_expression "(uVar49 & 0xff0000)" ( (binary_expression "uVar49 & 0xff0000" identifier & number_literal) )) >> number_literal) ))))) ;)) (expression_statement "uVar43 = (ulong)((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f);" (assignment_expression "uVar43 = (ulong)((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f)" identifier = (call_expression "(ulong)((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f)" ( (binary_expression "(uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f" (binary_expression "(uVar26 | uVar41) >> 0xb" (parenthesized_expression "(uVar26 | uVar41)" ( (binary_expression "uVar26 | uVar41" identifier | identifier) )) >> number_literal) | (binary_expression "uVar49 >> 0x18 & 0x1f" (binary_expression "uVar49 >> 0x18" identifier >> number_literal) & number_literal)) )))) ;) })) }) (else_clause "else if (((uVar60 == 0x85 || uVar60 == 100) || uVar60 == 4) || (uVar60 != 100)) {\n        if (uVar60 != 100) goto LAB_002c5754;\n        uVar19 = uVar19 >> 5 & 0x1f |\n                 (ushort)(uVar22 >> 0xb) & 0x3e0 | (ushort)(uVar41 >> 0x10) & 0xfc00;\n      }" else (if_statement "if (((uVar60 == 0x85 || uVar60 == 100) || uVar60 == 4) || (uVar60 != 100)) {\n        if (uVar60 != 100) goto LAB_002c5754;\n        uVar19 = uVar19 >> 5 & 0x1f |\n                 (ushort)(uVar22 >> 0xb) & 0x3e0 | (ushort)(uVar41 >> 0x10) & 0xfc00;\n      }" if (parenthesized_expression "(((uVar60 == 0x85 || uVar60 == 100) || uVar60 == 4) || (uVar60 != 100))" ( (binary_expression "((uVar60 == 0x85 || uVar60 == 100) || uVar60 == 4) || (uVar60 != 100)" (parenthesized_expression "((uVar60 == 0x85 || uVar60 == 100) || uVar60 == 4)" ( (binary_expression "(uVar60 == 0x85 || uVar60 == 100) || uVar60 == 4" (parenthesized_expression "(uVar60 == 0x85 || uVar60 == 100)" ( (binary_expression "uVar60 == 0x85 || uVar60 == 100" (binary_expression "uVar60 == 0x85" identifier == number_literal) || (binary_expression "uVar60 == 100" identifier == number_literal)) )) || (binary_expression "uVar60 == 4" identifier == number_literal)) )) || (parenthesized_expression "(uVar60 != 100)" ( (binary_expression "uVar60 != 100" identifier != number_literal) ))) )) (compound_statement "{\n        if (uVar60 != 100) goto LAB_002c5754;\n        uVar19 = uVar19 >> 5 & 0x1f |\n                 (ushort)(uVar22 >> 0xb) & 0x3e0 | (ushort)(uVar41 >> 0x10) & 0xfc00;\n      }" { (if_statement "if (uVar60 != 100) goto LAB_002c5754;" if (parenthesized_expression "(uVar60 != 100)" ( (binary_expression "uVar60 != 100" identifier != number_literal) )) (goto_statement "goto LAB_002c5754;" goto statement_identifier ;)) (expression_statement "uVar19 = uVar19 >> 5 & 0x1f |\n                 (ushort)(uVar22 >> 0xb) & 0x3e0 | (ushort)(uVar41 >> 0x10) & 0xfc00;" (assignment_expression "uVar19 = uVar19 >> 5 & 0x1f |\n                 (ushort)(uVar22 >> 0xb) & 0x3e0 | (ushort)(uVar41 >> 0x10) & 0xfc00" identifier = (binary_expression "uVar19 >> 5 & 0x1f |\n                 (ushort)(uVar22 >> 0xb) & 0x3e0 | (ushort)(uVar41 >> 0x10) & 0xfc00" (binary_expression "uVar19 >> 5 & 0x1f |\n                 (ushort)(uVar22 >> 0xb) & 0x3e0" (binary_expression "uVar19 >> 5 & 0x1f" (binary_expression "uVar19 >> 5" identifier >> number_literal) & number_literal) | (binary_expression "(ushort)(uVar22 >> 0xb) & 0x3e0" (call_expression "(ushort)(uVar22 >> 0xb)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(uVar22 >> 0xb)" ( (binary_expression "uVar22 >> 0xb" identifier >> number_literal) ))) & number_literal)) | (binary_expression "(ushort)(uVar41 >> 0x10) & 0xfc00" (call_expression "(ushort)(uVar41 >> 0x10)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(uVar41 >> 0x10)" ( (binary_expression "uVar41 >> 0x10" identifier >> number_literal) ))) & number_literal))) ;) })))) (labeled_statement "LAB_002c5471:\n      uVar38 = (ushort)uVar43 << 8 | (ushort)uVar43 >> 8;" statement_identifier : (expression_statement "uVar38 = (ushort)uVar43 << 8 | (ushort)uVar43 >> 8;" (assignment_expression "uVar38 = (ushort)uVar43 << 8 | (ushort)uVar43 >> 8" identifier = (binary_expression "(ushort)uVar43 << 8 | (ushort)uVar43 >> 8" (binary_expression "(ushort)uVar43 << 8" (cast_expression "(ushort)uVar43" ( (type_descriptor "ushort" type_identifier) ) identifier) << number_literal) | (binary_expression "(ushort)uVar43 >> 8" (cast_expression "(ushort)uVar43" ( (type_descriptor "ushort" type_identifier) ) identifier) >> number_literal))) ;)) (expression_statement "iVar25 = (int)CONCAT62((int6)(uVar43 >> 0x10),uVar38);" (assignment_expression "iVar25 = (int)CONCAT62((int6)(uVar43 >> 0x10),uVar38)" identifier = (cast_expression "(int)CONCAT62((int6)(uVar43 >> 0x10),uVar38)" ( (type_descriptor "int" primitive_type) ) (call_expression "CONCAT62((int6)(uVar43 >> 0x10),uVar38)" identifier (argument_list "((int6)(uVar43 >> 0x10),uVar38)" ( (call_expression "(int6)(uVar43 >> 0x10)" (parenthesized_expression "(int6)" ( identifier )) (argument_list "(uVar43 >> 0x10)" ( (binary_expression "uVar43 >> 0x10" identifier >> number_literal) ))) , identifier ))))) ;) (expression_statement "*(ushort *)(view + 2) = uVar38;" (assignment_expression "*(ushort *)(view + 2) = uVar38" (pointer_expression "*(ushort *)(view + 2)" * (cast_expression "(ushort *)(view + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(view + 2)" ( (binary_expression "view + 2" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(ushort *)view = uVar19 << 8 | uVar19 >> 8;" (assignment_expression "*(ushort *)view = uVar19 << 8 | uVar19 >> 8" (pointer_expression "*(ushort *)view" * (cast_expression "(ushort *)view" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar19 << 8 | uVar19 >> 8" (binary_expression "uVar19 << 8" identifier << number_literal) | (binary_expression "uVar19 >> 8" identifier >> number_literal))) ;) }) (else_clause "else if (((uVar21 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) != 0)) &&\n            (1 < uVar60 - 0x8b)) {\n      uVar21 = *(uint *)view;\n      uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n      uVar43 = (ulong)uVar21;\n      uVar19 = (ushort)(uVar21 >> 0x10);\n      goto LAB_002c5471;\n    }" else (if_statement "if (((uVar21 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) != 0)) &&\n            (1 < uVar60 - 0x8b)) {\n      uVar21 = *(uint *)view;\n      uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n      uVar43 = (ulong)uVar21;\n      uVar19 = (ushort)(uVar21 >> 0x10);\n      goto LAB_002c5471;\n    }" if (parenthesized_expression "(((uVar21 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) != 0)) &&\n            (1 < uVar60 - 0x8b))" ( (binary_expression "((uVar21 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) != 0)) &&\n            (1 < uVar60 - 0x8b)" (parenthesized_expression "((uVar21 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) != 0))" ( (binary_expression "(uVar21 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) != 0)" (parenthesized_expression "(uVar21 < 0x29)" ( (binary_expression "uVar21 < 0x29" identifier < number_literal) )) && (parenthesized_expression "((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) != 0)" ( (binary_expression "(0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) != 0" (parenthesized_expression "(0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1)" ( (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f)" number_literal >> (parenthesized_expression "((ulong)uVar21 & 0x3f)" ( (binary_expression "(ulong)uVar21 & 0x3f" (cast_expression "(ulong)uVar21" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) ))) & number_literal) )) != number_literal) ))) )) && (parenthesized_expression "(1 < uVar60 - 0x8b)" ( (binary_expression "1 < uVar60 - 0x8b" number_literal < (binary_expression "uVar60 - 0x8b" identifier - number_literal)) ))) )) (compound_statement "{\n      uVar21 = *(uint *)view;\n      uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;\n      uVar43 = (ulong)uVar21;\n      uVar19 = (ushort)(uVar21 >> 0x10);\n      goto LAB_002c5471;\n    }" { (expression_statement "uVar21 = *(uint *)view;" (assignment_expression "uVar21 = *(uint *)view" identifier = (pointer_expression "*(uint *)view" * (cast_expression "(uint *)view" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;" (assignment_expression "uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" identifier = (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8" (binary_expression "uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8" (binary_expression "uVar21 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar21 & 0xff0000) >> 8" (parenthesized_expression "(uVar21 & 0xff0000)" ( (binary_expression "uVar21 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar21 & 0xff00) << 8" (parenthesized_expression "(uVar21 & 0xff00)" ( (binary_expression "uVar21 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar21 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar43 = (ulong)uVar21;" (assignment_expression "uVar43 = (ulong)uVar21" identifier = (cast_expression "(ulong)uVar21" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar19 = (ushort)(uVar21 >> 0x10);" (assignment_expression "uVar19 = (ushort)(uVar21 >> 0x10)" identifier = (call_expression "(ushort)(uVar21 >> 0x10)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(uVar21 >> 0x10)" ( (binary_expression "uVar21 >> 0x10" identifier >> number_literal) )))) ;) (goto_statement "goto LAB_002c5471;" goto statement_identifier ;) })))) (if_statement "if (SVar27 == STATUS_OVERFLOW) {\n      if (gsym == (Sized_symbol<32> *)0x0) {\n        pcVar13 = (((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj).super_Object.name_._M_dataplus._M_p;\n        iVar25 = 0x2c7937;\n        pcVar28 = (char *)gettext("relocation overflow: %u against local symbol %u in %s");\n        gold::gold_error_at_location<32,_true>\n                  (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13);\n      }\n      else {\n        bVar18 = (gsym->super_Symbol).field_0x3a;\n        if ((bVar18 & 7) == 0) {\n          uVar21 = (gsym->super_Symbol).u2_.shndx;\n          if (((gsym->super_Symbol).field_0x3b & 0x20) == 0) {\n            bVar61 = gold::Symbol::is_common_shndx(uVar21);\n            bVar61 = !bVar61;\n          }\n          else {\n            bVar61 = uVar21 != 0;\n          }\n        }\n        else {\n          bVar61 = (bVar18 & 7) != 4;\n        }\n        if ((bVar61) && (((gsym->super_Symbol).field_0x3a & 7) == 0)) {\n          uVar9 = ((gsym->super_Symbol).u1_.output_data)->address_;\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        else {\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        operator_delete(local_58._M_dataplus._M_p);\n      }\n    }\n    else if (SVar27 != STATUS_OKAY) {\n      if (SVar27 == STATUS_BAD_RELOC) {\n        pcVar28 = "unexpected opcode while processing relocation";\n      }\n      else {\n        if (SVar27 != STATUS_PCREL_UNALIGNED) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");\n        }\n        pcVar28 = "unaligned PC-relative relocation";\n      }\n      pcVar28 = (char *)gettext(pcVar28);\n      gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);\n      iVar25 = (int)relnum;\n    }" if (parenthesized_expression "(SVar27 == STATUS_OVERFLOW)" ( (binary_expression "SVar27 == STATUS_OVERFLOW" identifier == identifier) )) (compound_statement "{\n      if (gsym == (Sized_symbol<32> *)0x0) {\n        pcVar13 = (((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj).super_Object.name_._M_dataplus._M_p;\n        iVar25 = 0x2c7937;\n        pcVar28 = (char *)gettext("relocation overflow: %u against local symbol %u in %s");\n        gold::gold_error_at_location<32,_true>\n                  (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13);\n      }\n      else {\n        bVar18 = (gsym->super_Symbol).field_0x3a;\n        if ((bVar18 & 7) == 0) {\n          uVar21 = (gsym->super_Symbol).u2_.shndx;\n          if (((gsym->super_Symbol).field_0x3b & 0x20) == 0) {\n            bVar61 = gold::Symbol::is_common_shndx(uVar21);\n            bVar61 = !bVar61;\n          }\n          else {\n            bVar61 = uVar21 != 0;\n          }\n        }\n        else {\n          bVar61 = (bVar18 & 7) != 4;\n        }\n        if ((bVar61) && (((gsym->super_Symbol).field_0x3a & 7) == 0)) {\n          uVar9 = ((gsym->super_Symbol).u1_.output_data)->address_;\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        else {\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        operator_delete(local_58._M_dataplus._M_p);\n      }\n    }" { (if_statement "if (gsym == (Sized_symbol<32> *)0x0) {\n        pcVar13 = (((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj).super_Object.name_._M_dataplus._M_p;\n        iVar25 = 0x2c7937;\n        pcVar28 = (char *)gettext("relocation overflow: %u against local symbol %u in %s");\n        gold::gold_error_at_location<32,_true>\n                  (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13);\n      }\n      else {\n        bVar18 = (gsym->super_Symbol).field_0x3a;\n        if ((bVar18 & 7) == 0) {\n          uVar21 = (gsym->super_Symbol).u2_.shndx;\n          if (((gsym->super_Symbol).field_0x3b & 0x20) == 0) {\n            bVar61 = gold::Symbol::is_common_shndx(uVar21);\n            bVar61 = !bVar61;\n          }\n          else {\n            bVar61 = uVar21 != 0;\n          }\n        }\n        else {\n          bVar61 = (bVar18 & 7) != 4;\n        }\n        if ((bVar61) && (((gsym->super_Symbol).field_0x3a & 7) == 0)) {\n          uVar9 = ((gsym->super_Symbol).u1_.output_data)->address_;\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        else {\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        operator_delete(local_58._M_dataplus._M_p);\n      }" if (parenthesized_expression "(gsym == (Sized_symbol<32> *)0x0)" ( (binary_expression "gsym == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) ))) )) (compound_statement "{\n        pcVar13 = (((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj).super_Object.name_._M_dataplus._M_p;\n        iVar25 = 0x2c7937;\n        pcVar28 = (char *)gettext("relocation overflow: %u against local symbol %u in %s");\n        gold::gold_error_at_location<32,_true>\n                  (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13);\n      }" { (expression_statement "pcVar13 = (((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj).super_Object.name_._M_dataplus._M_p;" (assignment_expression "pcVar13 = (((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj).super_Object.name_._M_dataplus._M_p" identifier = (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj).super_Object.name_._M_dataplus._M_p" ( (field_expression "((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj).super_Object.name_._M_dataplus._M_p" (field_expression "((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj).super_Object.name_._M_dataplus" (field_expression "((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj).super_Object.name_" (field_expression "((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                  super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(this_00->super_Sized_relobj_file<32,_false>)" ( (comma_expression "this_00->super_Sized_relobj_file<32,_false" (binary_expression "this_00->super_Sized_relobj_file<32" (field_expression "this_00->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) . field_identifier) ))) ;) (expression_statement "iVar25 = 0x2c7937;" (assignment_expression "iVar25 = 0x2c7937" identifier = number_literal) ;) (expression_statement "pcVar28 = (char *)gettext("relocation overflow: %u against local symbol %u in %s");" (assignment_expression "pcVar28 = (char *)gettext("relocation overflow: %u against local symbol %u in %s")" identifier = (cast_expression "(char *)gettext("relocation overflow: %u against local symbol %u in %s")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext("relocation overflow: %u against local symbol %u in %s")" identifier (argument_list "("relocation overflow: %u against local symbol %u in %s")" ( (string_literal ""relocation overflow: %u against local symbol %u in %s"" " string_content ") ))))) ;) (labeled_statement "gold::gold_error_at_location<32,_true>\n                  (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13);" statement_identifier : (ERROR ":" :) (expression_statement "gold_error_at_location<32,_true>\n                  (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13);" (comma_expression "gold_error_at_location<32,_true>\n                  (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13)" (binary_expression "gold_error_at_location<32" identifier < number_literal) , (binary_expression "_true>\n                  (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13)" identifier > (parenthesized_expression "(relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13)" ( (comma_expression "relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13" identifier , (comma_expression "relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13" identifier , (comma_expression "(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13" (cast_expression "(ulong)uVar48" ( (type_descriptor "ulong" type_identifier) ) identifier) , (comma_expression "pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13" identifier , (comma_expression "(ulong)uVar60,(ulong)_Var14,pcVar13" (cast_expression "(ulong)uVar60" ( (type_descriptor "ulong" type_identifier) ) identifier) , (comma_expression "(ulong)_Var14,pcVar13" (cast_expression "(ulong)_Var14" ( (type_descriptor "ulong" type_identifier) ) identifier) , identifier)))))) )))) ;)) }) (else_clause "else {\n        bVar18 = (gsym->super_Symbol).field_0x3a;\n        if ((bVar18 & 7) == 0) {\n          uVar21 = (gsym->super_Symbol).u2_.shndx;\n          if (((gsym->super_Symbol).field_0x3b & 0x20) == 0) {\n            bVar61 = gold::Symbol::is_common_shndx(uVar21);\n            bVar61 = !bVar61;\n          }\n          else {\n            bVar61 = uVar21 != 0;\n          }\n        }\n        else {\n          bVar61 = (bVar18 & 7) != 4;\n        }\n        if ((bVar61) && (((gsym->super_Symbol).field_0x3a & 7) == 0)) {\n          uVar9 = ((gsym->super_Symbol).u1_.output_data)->address_;\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        else {\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        operator_delete(local_58._M_dataplus._M_p);\n      }" else (compound_statement "{\n        bVar18 = (gsym->super_Symbol).field_0x3a;\n        if ((bVar18 & 7) == 0) {\n          uVar21 = (gsym->super_Symbol).u2_.shndx;\n          if (((gsym->super_Symbol).field_0x3b & 0x20) == 0) {\n            bVar61 = gold::Symbol::is_common_shndx(uVar21);\n            bVar61 = !bVar61;\n          }\n          else {\n            bVar61 = uVar21 != 0;\n          }\n        }\n        else {\n          bVar61 = (bVar18 & 7) != 4;\n        }\n        if ((bVar61) && (((gsym->super_Symbol).field_0x3a & 7) == 0)) {\n          uVar9 = ((gsym->super_Symbol).u1_.output_data)->address_;\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        else {\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        operator_delete(local_58._M_dataplus._M_p);\n      }" { (expression_statement "bVar18 = (gsym->super_Symbol).field_0x3a;" (assignment_expression "bVar18 = (gsym->super_Symbol).field_0x3a" identifier = (field_expression "(gsym->super_Symbol).field_0x3a" (parenthesized_expression "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if ((bVar18 & 7) == 0) {\n          uVar21 = (gsym->super_Symbol).u2_.shndx;\n          if (((gsym->super_Symbol).field_0x3b & 0x20) == 0) {\n            bVar61 = gold::Symbol::is_common_shndx(uVar21);\n            bVar61 = !bVar61;\n          }\n          else {\n            bVar61 = uVar21 != 0;\n          }\n        }\n        else {\n          bVar61 = (bVar18 & 7) != 4;\n        }" if (parenthesized_expression "((bVar18 & 7) == 0)" ( (binary_expression "(bVar18 & 7) == 0" (parenthesized_expression "(bVar18 & 7)" ( (binary_expression "bVar18 & 7" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n          uVar21 = (gsym->super_Symbol).u2_.shndx;\n          if (((gsym->super_Symbol).field_0x3b & 0x20) == 0) {\n            bVar61 = gold::Symbol::is_common_shndx(uVar21);\n            bVar61 = !bVar61;\n          }\n          else {\n            bVar61 = uVar21 != 0;\n          }\n        }" { (expression_statement "uVar21 = (gsym->super_Symbol).u2_.shndx;" (assignment_expression "uVar21 = (gsym->super_Symbol).u2_.shndx" identifier = (field_expression "(gsym->super_Symbol).u2_.shndx" (field_expression "(gsym->super_Symbol).u2_" (parenthesized_expression "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) )) . field_identifier) . field_identifier)) ;) (if_statement "if (((gsym->super_Symbol).field_0x3b & 0x20) == 0) {\n            bVar61 = gold::Symbol::is_common_shndx(uVar21);\n            bVar61 = !bVar61;\n          }\n          else {\n            bVar61 = uVar21 != 0;\n          }" if (parenthesized_expression "(((gsym->super_Symbol).field_0x3b & 0x20) == 0)" ( (binary_expression "((gsym->super_Symbol).field_0x3b & 0x20) == 0" (parenthesized_expression "((gsym->super_Symbol).field_0x3b & 0x20)" ( (binary_expression "(gsym->super_Symbol).field_0x3b & 0x20" (field_expression "(gsym->super_Symbol).field_0x3b" (parenthesized_expression "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) )) . field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n            bVar61 = gold::Symbol::is_common_shndx(uVar21);\n            bVar61 = !bVar61;\n          }" { (ERROR "bVar61 = gold::" (assignment_expression "bVar61 = gold" identifier = identifier) : :) (labeled_statement "Symbol::is_common_shndx(uVar21);" statement_identifier : (ERROR ":" :) (expression_statement "is_common_shndx(uVar21);" (call_expression "is_common_shndx(uVar21)" identifier (argument_list "(uVar21)" ( identifier ))) ;)) (expression_statement "bVar61 = !bVar61;" (assignment_expression "bVar61 = !bVar61" identifier = (unary_expression "!bVar61" ! identifier)) ;) }) (else_clause "else {\n            bVar61 = uVar21 != 0;\n          }" else (compound_statement "{\n            bVar61 = uVar21 != 0;\n          }" { (expression_statement "bVar61 = uVar21 != 0;" (assignment_expression "bVar61 = uVar21 != 0" identifier = (binary_expression "uVar21 != 0" identifier != number_literal)) ;) }))) }) (else_clause "else {\n          bVar61 = (bVar18 & 7) != 4;\n        }" else (compound_statement "{\n          bVar61 = (bVar18 & 7) != 4;\n        }" { (expression_statement "bVar61 = (bVar18 & 7) != 4;" (assignment_expression "bVar61 = (bVar18 & 7) != 4" identifier = (binary_expression "(bVar18 & 7) != 4" (parenthesized_expression "(bVar18 & 7)" ( (binary_expression "bVar18 & 7" identifier & number_literal) )) != number_literal)) ;) }))) (if_statement "if ((bVar61) && (((gsym->super_Symbol).field_0x3a & 7) == 0)) {\n          uVar9 = ((gsym->super_Symbol).u1_.output_data)->address_;\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }\n        else {\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }" if (parenthesized_expression "((bVar61) && (((gsym->super_Symbol).field_0x3a & 7) == 0))" ( (binary_expression "(bVar61) && (((gsym->super_Symbol).field_0x3a & 7) == 0)" (parenthesized_expression "(bVar61)" ( identifier )) && (parenthesized_expression "(((gsym->super_Symbol).field_0x3a & 7) == 0)" ( (binary_expression "((gsym->super_Symbol).field_0x3a & 7) == 0" (parenthesized_expression "((gsym->super_Symbol).field_0x3a & 7)" ( (binary_expression "(gsym->super_Symbol).field_0x3a & 7" (field_expression "(gsym->super_Symbol).field_0x3a" (parenthesized_expression "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) )) . field_identifier) & number_literal) )) == number_literal) ))) )) (compound_statement "{\n          uVar9 = ((gsym->super_Symbol).u1_.output_data)->address_;\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }" { (expression_statement "uVar9 = ((gsym->super_Symbol).u1_.output_data)->address_;" (assignment_expression "uVar9 = ((gsym->super_Symbol).u1_.output_data)->address_" identifier = (field_expression "((gsym->super_Symbol).u1_.output_data)->address_" (parenthesized_expression "((gsym->super_Symbol).u1_.output_data)" ( (field_expression "(gsym->super_Symbol).u1_.output_data" (field_expression "(gsym->super_Symbol).u1_" (parenthesized_expression "(gsym->super_Symbol)" ( (field_expression "gsym->super_Symbol" identifier -> field_identifier) )) . field_identifier) . field_identifier) )) -> field_identifier)) ;) (labeled_statement "gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);" statement_identifier : (ERROR ":" :) (labeled_statement "Symbol::demangled_name(&local_58,&gsym->super_Symbol);" statement_identifier : (ERROR ":" :) (expression_statement "demangled_name(&local_58,&gsym->super_Symbol);" (call_expression "demangled_name(&local_58,&gsym->super_Symbol)" identifier (argument_list "(&local_58,&gsym->super_Symbol)" ( (pointer_expression "&local_58" & identifier) , (pointer_expression "&gsym->super_Symbol" & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) ))) ;))) (expression_statement "_Var15._M_p = local_58._M_dataplus._M_p;" (assignment_expression "_Var15._M_p = local_58._M_dataplus._M_p" (field_expression "_Var15._M_p" identifier . field_identifier) = (field_expression "local_58._M_dataplus._M_p" (field_expression "local_58._M_dataplus" identifier . field_identifier) . field_identifier)) ;) (expression_statement "pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\' defined in %s");" (assignment_expression "pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\' defined in %s")" identifier = (cast_expression "(char *)gettext("relocation overflow: %u against \'%s\' defined in %s")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext("relocation overflow: %u against \'%s\' defined in %s")" identifier (argument_list "("relocation overflow: %u against \'%s\' defined in %s")" ( (string_literal ""relocation overflow: %u against \'%s\' defined in %s"" " string_content escape_sequence string_content escape_sequence string_content ") ))))) ;) comment (labeled_statement "gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9);" statement_identifier : (ERROR ":" :) (expression_statement "gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9);" (comma_expression "gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9)" (binary_expression "gold_error_at_location<32" identifier < number_literal) , (binary_expression "_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9)" identifier > (parenthesized_expression "(relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9)" ( (comma_expression "relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9" identifier , (comma_expression "relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9" identifier , (comma_expression "(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9" (cast_expression "(ulong)uVar48" ( (type_descriptor "ulong" type_identifier) ) identifier) , (comma_expression "pcVar28,(ulong)uVar60,_Var15._M_p,uVar9" identifier , (comma_expression "(ulong)uVar60,_Var15._M_p,uVar9" (cast_expression "(ulong)uVar60" ( (type_descriptor "ulong" type_identifier) ) identifier) , (comma_expression "_Var15._M_p,uVar9" (field_expression "_Var15._M_p" identifier . field_identifier) , identifier)))))) )))) ;)) (expression_statement "iVar25 = (int)relnum;" (assignment_expression "iVar25 = (int)relnum" identifier = (cast_expression "(int)relnum" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2" (binary_expression "allocator<char>_>_9\n               *)local_58._M_dataplus._M_p" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n               *)local_58._M_dataplus._M_p" identifier * (ERROR ")" )) (field_expression "local_58._M_dataplus._M_p" (field_expression "local_58._M_dataplus" identifier . field_identifier) . field_identifier))) == (pointer_expression "&local_58.field_2" & (field_expression "local_58.field_2" identifier . field_identifier))) )) )) (goto_statement "goto LAB_002c53ec;" goto statement_identifier ;)) }) (else_clause "else {\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }" else (compound_statement "{\n          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);\n          _Var15._M_p = local_58._M_dataplus._M_p;\n          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'");\n                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */\n          gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);\n          iVar25 = (int)relnum;\n          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;\n        }" { (labeled_statement "gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);" statement_identifier : (ERROR ":" :) (labeled_statement "Symbol::demangled_name(&local_58,&gsym->super_Symbol);" statement_identifier : (ERROR ":" :) (expression_statement "demangled_name(&local_58,&gsym->super_Symbol);" (call_expression "demangled_name(&local_58,&gsym->super_Symbol)" identifier (argument_list "(&local_58,&gsym->super_Symbol)" ( (pointer_expression "&local_58" & identifier) , (pointer_expression "&gsym->super_Symbol" & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) ))) ;))) (expression_statement "_Var15._M_p = local_58._M_dataplus._M_p;" (assignment_expression "_Var15._M_p = local_58._M_dataplus._M_p" (field_expression "_Var15._M_p" identifier . field_identifier) = (field_expression "local_58._M_dataplus._M_p" (field_expression "local_58._M_dataplus" identifier . field_identifier) . field_identifier)) ;) (expression_statement "pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'");" (assignment_expression "pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'")" identifier = (cast_expression "(char *)gettext("relocation overflow: %u against \'%s\'")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext("relocation overflow: %u against \'%s\'")" identifier (argument_list "("relocation overflow: %u against \'%s\'")" ( (string_literal ""relocation overflow: %u against \'%s\'"" " string_content escape_sequence string_content escape_sequence ") ))))) ;) comment (labeled_statement "gold::gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);" statement_identifier : (ERROR ":" :) (expression_statement "gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);" (comma_expression "gold_error_at_location<32,_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p)" (binary_expression "gold_error_at_location<32" identifier < number_literal) , (binary_expression "_true>\n                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p)" identifier > (parenthesized_expression "(relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p)" ( (comma_expression "relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p" identifier , (comma_expression "relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p" identifier , (comma_expression "(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p" (cast_expression "(ulong)uVar48" ( (type_descriptor "ulong" type_identifier) ) identifier) , (comma_expression "pcVar28,(ulong)uVar60,_Var15._M_p" identifier , (comma_expression "(ulong)uVar60,_Var15._M_p" (cast_expression "(ulong)uVar60" ( (type_descriptor "ulong" type_identifier) ) identifier) , (field_expression "_Var15._M_p" identifier . field_identifier)))))) )))) ;)) (expression_statement "iVar25 = (int)relnum;" (assignment_expression "iVar25 = (int)relnum" identifier = (cast_expression "(int)relnum" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;" if (parenthesized_expression "((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2)" ( (parenthesized_expression "(anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2)" ( (ERROR "anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::" (comma_expression "anon_union_16_2_edb7204a_for_basic_string<char,_std" (binary_expression "anon_union_16_2_edb7204a_for_basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_9\n               *)local_58._M_dataplus._M_p == &local_58.field_2" (binary_expression "allocator<char>_>_9\n               *)local_58._M_dataplus._M_p" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (binary_expression "_9\n               *)local_58._M_dataplus._M_p" identifier * (ERROR ")" )) (field_expression "local_58._M_dataplus._M_p" (field_expression "local_58._M_dataplus" identifier . field_identifier) . field_identifier))) == (pointer_expression "&local_58.field_2" & (field_expression "local_58.field_2" identifier . field_identifier))) )) )) (goto_statement "goto LAB_002c53ec;" goto statement_identifier ;)) }))) (expression_statement "operator_delete(local_58._M_dataplus._M_p);" (call_expression "operator_delete(local_58._M_dataplus._M_p)" identifier (argument_list "(local_58._M_dataplus._M_p)" ( (field_expression "local_58._M_dataplus._M_p" (field_expression "local_58._M_dataplus" identifier . field_identifier) . field_identifier) ))) ;) }))) }) (else_clause "else if (SVar27 != STATUS_OKAY) {\n      if (SVar27 == STATUS_BAD_RELOC) {\n        pcVar28 = "unexpected opcode while processing relocation";\n      }\n      else {\n        if (SVar27 != STATUS_PCREL_UNALIGNED) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");\n        }\n        pcVar28 = "unaligned PC-relative relocation";\n      }\n      pcVar28 = (char *)gettext(pcVar28);\n      gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);\n      iVar25 = (int)relnum;\n    }" else (if_statement "if (SVar27 != STATUS_OKAY) {\n      if (SVar27 == STATUS_BAD_RELOC) {\n        pcVar28 = "unexpected opcode while processing relocation";\n      }\n      else {\n        if (SVar27 != STATUS_PCREL_UNALIGNED) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");\n        }\n        pcVar28 = "unaligned PC-relative relocation";\n      }\n      pcVar28 = (char *)gettext(pcVar28);\n      gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);\n      iVar25 = (int)relnum;\n    }" if (parenthesized_expression "(SVar27 != STATUS_OKAY)" ( (binary_expression "SVar27 != STATUS_OKAY" identifier != identifier) )) (compound_statement "{\n      if (SVar27 == STATUS_BAD_RELOC) {\n        pcVar28 = "unexpected opcode while processing relocation";\n      }\n      else {\n        if (SVar27 != STATUS_PCREL_UNALIGNED) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");\n        }\n        pcVar28 = "unaligned PC-relative relocation";\n      }\n      pcVar28 = (char *)gettext(pcVar28);\n      gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);\n      iVar25 = (int)relnum;\n    }" { (if_statement "if (SVar27 == STATUS_BAD_RELOC) {\n        pcVar28 = "unexpected opcode while processing relocation";\n      }\n      else {\n        if (SVar27 != STATUS_PCREL_UNALIGNED) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");\n        }\n        pcVar28 = "unaligned PC-relative relocation";\n      }" if (parenthesized_expression "(SVar27 == STATUS_BAD_RELOC)" ( (binary_expression "SVar27 == STATUS_BAD_RELOC" identifier == identifier) )) (compound_statement "{\n        pcVar28 = "unexpected opcode while processing relocation";\n      }" { (expression_statement "pcVar28 = "unexpected opcode while processing relocation";" (assignment_expression "pcVar28 = "unexpected opcode while processing relocation"" identifier = (string_literal ""unexpected opcode while processing relocation"" " string_content ")) ;) }) (else_clause "else {\n        if (SVar27 != STATUS_PCREL_UNALIGNED) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");\n        }\n        pcVar28 = "unaligned PC-relative relocation";\n      }" else (compound_statement "{\n        if (SVar27 != STATUS_PCREL_UNALIGNED) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");\n        }\n        pcVar28 = "unaligned PC-relative relocation";\n      }" { (if_statement "if (SVar27 != STATUS_PCREL_UNALIGNED) {\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");\n        }" if (parenthesized_expression "(SVar27 != STATUS_PCREL_UNALIGNED)" ( (binary_expression "SVar27 != STATUS_PCREL_UNALIGNED" identifier != identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");\n        }" { comment (labeled_statement "gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");" (call_expression "do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x3035,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;)) })) (expression_statement "pcVar28 = "unaligned PC-relative relocation";" (assignment_expression "pcVar28 = "unaligned PC-relative relocation"" identifier = (string_literal ""unaligned PC-relative relocation"" " string_content ")) ;) }))) (expression_statement "pcVar28 = (char *)gettext(pcVar28);" (assignment_expression "pcVar28 = (char *)gettext(pcVar28)" identifier = (cast_expression "(char *)gettext(pcVar28)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext(pcVar28)" identifier (argument_list "(pcVar28)" ( identifier ))))) ;) (labeled_statement "gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);" statement_identifier : (ERROR ":" :) (expression_statement "gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);" (comma_expression "gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28)" (binary_expression "gold_error_at_location<32" identifier < number_literal) , (binary_expression "_true>(relinfo,relnum,(ulong)uVar48,pcVar28)" identifier > (parenthesized_expression "(relinfo,relnum,(ulong)uVar48,pcVar28)" ( (comma_expression "relinfo,relnum,(ulong)uVar48,pcVar28" identifier , (comma_expression "relnum,(ulong)uVar48,pcVar28" identifier , (comma_expression "(ulong)uVar48,pcVar28" (cast_expression "(ulong)uVar48" ( (type_descriptor "ulong" type_identifier) ) identifier) , identifier))) )))) ;)) (expression_statement "iVar25 = (int)relnum;" (assignment_expression "iVar25 = (int)relnum" identifier = (cast_expression "(int)relnum" ( (type_descriptor "int" primitive_type) ) identifier)) ;) })))) (labeled_statement "LAB_002c53ec:\n    gold::Symbol_value<32>::~Symbol_value(&symval,iVar25);" statement_identifier : (labeled_statement "gold::Symbol_value<32>::~Symbol_value(&symval,iVar25);" statement_identifier (ERROR "::Symbol_value<32>:" : : (binary_expression "Symbol_value<32" identifier < number_literal) > :) : (expression_statement "~Symbol_value(&symval,iVar25);" (unary_expression "~Symbol_value(&symval,iVar25)" ~ (call_expression "Symbol_value(&symval,iVar25)" identifier (argument_list "(&symval,iVar25)" ( (pointer_expression "&symval" & identifier) , identifier )))) ;))) (return_statement "return true;" return true ;) }) (ERROR "uVar21 = *puVar58;\n  goto LAB_002c4f1d;\nLAB_002c82c4:\n  Mips_output_data_got<32" identifier = * identifier ; goto identifier ; identifier : identifier < number_literal) , identifier > (ERROR "::" : :) identifier ( (call_expression "(Mips_output_data_got<32,_true> *)pMVar53,(Mips_address)object,pMVar45);\nLAB_002c82c9:\n  if ((char)puVar58 != '\0')" (parenthesized_expression "(Mips_output_data_got<32,_true> *)pMVar53,(Mips_address)object,pMVar45)" ( (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,(Mips_address)object,pMVar45" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,(Mips_address)object,pMVar45" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "(Mips_address)object,pMVar45" (cast_expression "(Mips_address)object" ( (type_descriptor "Mips_address" type_identifier) ) identifier) , identifier))) )) (ERROR ";\nLAB_002c82c9:\n  if" ; identifier : if) (argument_list "((char)puVar58 != '\0')" ( (binary_expression "(char)puVar58 != '\0'" (cast_expression "(char)puVar58" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) ))) (ERROR "goto LAB_002c4d83;\nLAB_002c5869:\n  pMVar42" identifier identifier ; identifier : identifier) = * ( (ERROR "Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;\nLAB_002c5870:" (comma_expression "Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> **)&gsym[1].super_Symbol.field_0x38" identifier > (pointer_expression "**)&gsym[1].super_Symbol.field_0x38" * (pointer_expression "*)&gsym[1].super_Symbol.field_0x38" * (ERROR ")" )) (pointer_expression "&gsym[1].super_Symbol.field_0x38" & (field_expression "gsym[1].super_Symbol.field_0x38" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier)))))) ; identifier :) identifier = ( (ERROR "Mips_relobj<32,_false> *)&symval;" (comma_expression "Mips_relobj<32,_false> *)&symval" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)&symval" identifier > (pointer_expression "*)&symval" * (ERROR ")" )) (pointer_expression "&symval" & identifier)))) ;) (assignment_expression "symval.u_.value =\n       Mips16_stub_section<32" (field_expression "symval.u_.value" (field_expression "symval.u_" identifier . field_identifier) . field_identifier) = (binary_expression "Mips16_stub_section<32" identifier < number_literal)) , identifier > (ERROR "::" : :) identifier ( ( (binary_expression "Mips16_stub_section<32" identifier < number_literal) , (binary_expression "_true> *)pMVar42" identifier > (pointer_expression "*)pMVar42" * (ERROR ")" )) identifier)) , ( (ERROR "Mips16_stub_section<32,_true> *)\n                  &(((Sized_relobj<32,_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                   super_Relobj).super_Object.name_);" (comma_expression "Mips16_stub_section<32,_true> *)\n                  &(((Sized_relobj<32,_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                   super_Relobj).super_Object.name_)" (binary_expression "Mips16_stub_section<32" identifier < number_literal) , (binary_expression "_true> *)\n                  &(((Sized_relobj<32,_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                   super_Relobj).super_Object.name_)" identifier > (pointer_expression "*)\n                  &(((Sized_relobj<32,_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                   super_Relobj).super_Object.name_)" * (ERROR ")" )) (pointer_expression "&(((Sized_relobj<32,_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                   super_Relobj).super_Object.name_)" & (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                   super_Relobj).super_Object.name_)" ( (field_expression "((Sized_relobj<32,_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                   super_Relobj).super_Object.name_" (field_expression "((Sized_relobj<32,_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                   super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                   super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                   super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar42->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar42->super_Sized_relobj_file<32,_false" (binary_expression "pMVar42->super_Sized_relobj_file<32" (field_expression "pMVar42->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) )))))) ;) identifier = ( (ERROR "Symbol_value<32> *)local_d0;\n  bVar61 = true;\n  local_e1 = true;\n  object = (_List_node_base **)local_d0;\n  goto LAB_002c4e20;\nLAB_002c4d83:\n  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 != -1) goto LAB_002c5256;\n  bVar61 = true;\n  goto LAB_002c4d98;\nswitchD_002c4f87_caseD_9:\n  bVar61 = false;" (binary_expression "Symbol_value<32> *)local_d0" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)local_d0" * (ERROR ")" )) identifier)) ; (assignment_expression "bVar61 = true" identifier = true) ; (assignment_expression "local_e1 = true" identifier = true) ; (assignment_expression "object = (_List_node_base **)local_d0" identifier = (cast_expression "(_List_node_base **)local_d0" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ; goto identifier ; identifier : (call_expression "iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);\n  if (iVar25 != -1)" (assignment_expression "iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4)" identifier = (pointer_expression "*(int *)((long)&gsym[1].super_Symbol.name_ + 4)" * (cast_expression "(int *)((long)&gsym[1].super_Symbol.name_ + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&gsym[1].super_Symbol.name_ + 4)" ( (binary_expression "(long)&gsym[1].super_Symbol.name_ + 4" (cast_expression "(long)&gsym[1].super_Symbol.name_" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&gsym[1].super_Symbol.name_" & (field_expression "gsym[1].super_Symbol.name_" (field_expression "gsym[1].super_Symbol" (subscript_expression "gsym[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) + number_literal) ))))) (ERROR ";\n  if" ; if) (argument_list "(iVar25 != -1)" ( (binary_expression "iVar25 != -1" identifier != number_literal) ))) identifier identifier ; (assignment_expression "bVar61 = true" identifier = true) ; goto identifier ; identifier : (assignment_expression "bVar61 = false" identifier = false) ;) identifier (ERROR ":\n  if" : if) ( (ERROR "gsym == (Sized_symbol<32> *)0x0)" (binary_expression "gsym == (Sized_symbol<32> *)0x0)" identifier == (parenthesized_expression "(Sized_symbol<32> *)0x0)" ( (binary_expression "Sized_symbol<32> *)0x0" (binary_expression "Sized_symbol<32" identifier < number_literal) > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal)) )))) { if (parenthesized_expression "(rel_type == 4)" ( (binary_expression "rel_type == 4" identifier == number_literal) )) (compound_statement "{\n      sVar56 = 0;\n      object = (_List_node_base **)this_00;\n      pMVar53 = (Mips_relobj<32,_false> *)view;\n      SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                         (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,bVar61,0,target,\n                          (bool)cVar47,&this->calculated_value_);\n    }" { (expression_statement "sVar56 = 0;" (assignment_expression "sVar56 = 0" identifier = number_literal) ;) (expression_statement "object = (_List_node_base **)this_00;" (assignment_expression "object = (_List_node_base **)this_00" identifier = (cast_expression "(_List_node_base **)this_00" ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)view;" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)view" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)view" ( (comma_expression "Mips_relobj<32,_false> *)view" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)view" identifier > (pointer_expression "*)view" * (ERROR ")" )) identifier))) ))) ;) (expression_statement "SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                         (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,bVar61,0,target,\n                          (bool)cVar47,&this->calculated_value_);" (comma_expression "SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local\n                         (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,bVar61,0,target,\n                          (bool)cVar47,&this->calculated_value_)" (assignment_expression "SVar27 = Mips_relocate_functions<32" identifier = (binary_expression "Mips_relocate_functions<32" identifier < number_literal)) , (binary_expression "_true>::do_relgot16_local\n                         (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,bVar61,0,target,\n                          (bool)cVar47,&this->calculated_value_)" identifier > (ERROR "::" : :) (call_expression "do_relgot16_local\n                         (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,bVar61,0,target,\n                          (bool)cVar47,&this->calculated_value_)" identifier (argument_list "(view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,bVar61,0,target,\n                          (bool)cVar47,&this->calculated_value_)" ( identifier , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00,psymval,local_c8,bVar61,0,target,\n                          (bool)cVar47,&this->calculated_value_)" ( (comma_expression "Mips_relobj<32,_true> *)this_00,psymval,local_c8,bVar61,0,target,\n                          (bool)cVar47,&this->calculated_value_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (comma_expression "_true> *)this_00,psymval,local_c8,bVar61,0,target,\n                          (bool)cVar47,&this->calculated_value_" (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier)) , (comma_expression "psymval,local_c8,bVar61,0,target,\n                          (bool)cVar47,&this->calculated_value_" identifier , (comma_expression "local_c8,bVar61,0,target,\n                          (bool)cVar47,&this->calculated_value_" identifier , (comma_expression "bVar61,0,target,\n                          (bool)cVar47,&this->calculated_value_" identifier , (comma_expression "0,target,\n                          (bool)cVar47,&this->calculated_value_" number_literal , (comma_expression "target,\n                          (bool)cVar47,&this->calculated_value_" identifier , (comma_expression "(bool)cVar47,&this->calculated_value_" (cast_expression "(bool)cVar47" ( (type_descriptor "bool" primitive_type) ) identifier) , (pointer_expression "&this->calculated_value_" & (field_expression "this->calculated_value_" identifier -> field_identifier)))))))))) )) ))))) ;) }) else { (if_statement "if (rel_type != 9) {\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2f66,"relocate");\n      }" if (parenthesized_expression "(rel_type != 9)" ( (binary_expression "rel_type != 9" identifier != number_literal) )) (compound_statement "{\nLAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2f66,"relocate");\n      }" { (labeled_statement "LAB_002c8373:\n                    /* WARNING: Subroutine does not return */\n        gold::do_gold_unreachable("../../gold/mips.cc",0x2f66,"relocate");" statement_identifier : comment (labeled_statement "gold::do_gold_unreachable("../../gold/mips.cc",0x2f66,"relocate");" statement_identifier : (ERROR ":" :) (expression_statement "do_gold_unreachable("../../gold/mips.cc",0x2f66,"relocate");" (call_expression "do_gold_unreachable("../../gold/mips.cc",0x2f66,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2f66,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;))) })) (expression_statement "pMVar53 = (Mips_relobj<32,_false> *)operator_new(0x40);" (assignment_expression "pMVar53 = (Mips_relobj<32,_false> *)operator_new(0x40)" identifier = (parenthesized_expression "(Mips_relobj<32,_false> *)operator_new(0x40)" ( (comma_expression "Mips_relobj<32,_false> *)operator_new(0x40)" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)operator_new(0x40)" identifier > (pointer_expression "*)operator_new(0x40)" * (ERROR ")" )) (call_expression "operator_new(0x40)" identifier (argument_list "(0x40)" ( number_literal )))))) ))) ;) (expression_statement "(((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.field_0x3c = 0;" (parenthesized_expression "(((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.field_0x3c = 0" ( (assignment_expression "((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.field_0x3c = 0" (field_expression "((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.field_0x3c" (field_expression "((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) = number_literal) )) ;) (expression_statement "SVar27 = STATUS_OKAY;" (assignment_expression "SVar27 = STATUS_OKAY" identifier = identifier) ;) (expression_statement "(((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.shnum_ = 0;" (parenthesized_expression "(((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.shnum_ = 0" ( (assignment_expression "((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.shnum_ = 0" (field_expression "((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.shnum_" (field_expression "((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) = number_literal) )) ;) (expression_statement "object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;" (comma_expression "object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs" (binary_expression "object = &(anonymous_namespace)::Mips_relocate_functions<32" (assignment_expression "object = &(anonymous_namespace)" identifier = (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (binary_expression "true>::got16_relocs" true > (ERROR "::" : :) identifier)) ;) ( (assignment_expression "((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.name_._M_string_length = (size_type)view" (field_expression "((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.name_._M_string_length" (field_expression "((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object.name_" (field_expression "((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).\n      super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(size_type)view" ( (type_descriptor "size_type" type_identifier) ) identifier)) (ERROR ";" ;) * ( (binary_expression "Mips_relobj<32" identifier < number_literal) , identifier > * * (ERROR ")" )) & ( (assignment_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj\n        ).super_Object.name_.field_2 = this_00" (field_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj\n        ).super_Object.name_.field_2" (field_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj\n        ).super_Object.name_" (field_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj\n        ).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj\n        )" ( (field_expression "(Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) = identifier) (ERROR ";" ;) * ( (binary_expression "Symbol_value<32" identifier < number_literal) > * * (ERROR ")" )) ( (cast_expression "(long)&(((Sized_relobj<32,_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8) = psymval" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (assignment_expression "&(((Sized_relobj<32,_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8) = psymval" (pointer_expression "&(((Sized_relobj<32,_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8)" & (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8)" ( (binary_expression "((Sized_relobj<32,_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8" (field_expression "((Sized_relobj<32,_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2" (field_expression "((Sized_relobj<32,_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_" (field_expression "((Sized_relobj<32,_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) + number_literal) ))) = identifier)) (ERROR ";" ;) * ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) & ( (assignment_expression "((Sized_relobj<32,_true> *)\n                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                super_Relobj).super_Object.input_file_ = local_c8" (field_expression "((Sized_relobj<32,_true> *)\n                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                super_Relobj).super_Object.input_file_" (field_expression "((Sized_relobj<32,_true> *)\n                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n                super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) = identifier) (ERROR ";" ;) * ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) ( (cast_expression "(long)&(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.input_file_ + 4) = uVar21" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (assignment_expression "&(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.input_file_ + 4) = uVar21" (pointer_expression "&(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.input_file_ + 4)" & (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.input_file_ + 4)" ( (binary_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.input_file_ + 4" (field_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.input_file_" (field_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )" ( (comma_expression "Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) + number_literal) ))) = identifier)) (ERROR ";" ;) * ( (type_descriptor "_Rb_tree_color *" type_identifier (abstract_pointer_declarator "*" *)) ) & ( (assignment_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj\n        ).super_Object.offset_ = _Var14" (field_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj\n        ).super_Object.offset_" (field_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj\n        ).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj\n        )" ( (field_expression "(Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) = identifier) (ERROR ";" ;) * ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) ( (ERROR "(long)&(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.offset_ + 4) = bVar61;\n      std::__detail::_List_node_base::_M_hook\n                ((_List_node_base *)pMVar53,\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }" (cast_expression "(long)&(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.offset_ + 4) = bVar61" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (assignment_expression "&(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.offset_ + 4) = bVar61" (pointer_expression "&(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.offset_ + 4)" & (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.offset_ + 4)" ( (binary_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.offset_ + 4" (field_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object.offset_" (field_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )->super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>\n                        )" ( (comma_expression "Sized_relobj<32,_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) + number_literal) ))) = identifier)) ; identifier : : identifier : : identifier : : (call_expression "_M_hook\n                ((_List_node_base *)pMVar53,\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)" identifier (argument_list "((_List_node_base *)pMVar53,\n                 (_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)" ( (cast_expression "(_List_node_base *)pMVar53" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(_List_node_base *)\n                 &(anonymous_namespace)::Mips_relocate_functions<32" (cast_expression "(_List_node_base *)\n                 &(anonymous_namespace)" ( (type_descriptor "_List_node_base *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(anonymous_namespace)" & (parenthesized_expression "(anonymous_namespace)" ( identifier )))) (ERROR "::Mips_relocate_functions" : : identifier) < number_literal) , (binary_expression "true>::got16_relocs" true > (ERROR "::" : :) identifier) ))) ; (assignment_expression "_DAT_0067db30 = _DAT_0067db30 + 1" identifier = (binary_expression "_DAT_0067db30 + 1" identifier + number_literal)) ; } goto identifier ; }) identifier = ( (ERROR "Mips_relobj<32,_false> *)target->got_;\n  if" (comma_expression "Mips_relobj<32,_false> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ; if) ( (ERROR "pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8333;\n  pSVar34 = gsym;" (binary_expression "pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8333;\n  pSVar34 = gsym" identifier == (ERROR "(Mips_relobj<32,_false> *)0x0) goto LAB_002c8333;" (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) identifier identifier ;) (assignment_expression "pSVar34 = gsym" identifier = identifier)) ;) (assignment_expression "local_e8 = Mips_output_data_got<32" identifier = (binary_expression "Mips_output_data_got<32" identifier < number_literal)) , identifier > (ERROR "::" : :) identifier ( ( (ERROR "Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                        (Mips_relobj<32,_true> *)this_00);\n  local_98._0_1_ = (byte)pSVar34;" (comma_expression "Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,\n                        (Mips_relobj<32,_true> *)this_00)" (binary_expression "Mips_output_data_got<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,&gsym->super_Symbol,0,\n                        (Mips_relobj<32,_true> *)this_00)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (comma_expression "&gsym->super_Symbol,0,\n                        (Mips_relobj<32,_true> *)this_00)" (pointer_expression "&gsym->super_Symbol" & (field_expression "gsym->super_Symbol" identifier -> field_identifier)) , (comma_expression "0,\n                        (Mips_relobj<32,_true> *)this_00)" number_literal , (parenthesized_expression "(Mips_relobj<32,_true> *)this_00)" ( (comma_expression "Mips_relobj<32,_true> *)this_00" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_true> *)this_00" identifier > (pointer_expression "*)this_00" * (ERROR ")" )) identifier))) )))))) ; (assignment_expression "local_98._0_1_ = (byte)pSVar34" (field_expression "local_98._0_1_" identifier . field_identifier) = (cast_expression "(byte)pSVar34" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) identifier = ( (ERROR "Mips_relobj<32,_false> *)target->got_;\n  if" (comma_expression "Mips_relobj<32,_false> *)target->got_" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)target->got_" identifier > (pointer_expression "*)target->got_" * (ERROR ")" )) (field_expression "target->got_" identifier -> field_identifier)))) ; if) ( identifier != (ERROR "(Mips_relobj<32,_false> *)0x0) goto LAB_002c6206;" (parenthesized_expression "(Mips_relobj<32,_false> *)0x0)" ( (comma_expression "Mips_relobj<32,_false> *)0x0" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) identifier identifier ;) identifier = ( (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)\n            Target_mips<32" (binary_expression "_false> *)\n            Target_mips" identifier > (pointer_expression "*)\n            Target_mips" * (ERROR ")" )) identifier)) < number_literal) , identifier > (ERROR "::" : :) identifier ( (ERROR "(Target_mips<32,_true> *)0x0);\n  pMVar42 = extraout_RDX;\nLAB_002c6490:" (parenthesized_expression "(Target_mips<32,_true> *)0x0)" ( (comma_expression "Target_mips<32,_true> *)0x0" (binary_expression "Target_mips<32" identifier < number_literal) , (binary_expression "_true> *)0x0" identifier > (pointer_expression "*)0x0" * (ERROR ")" )) number_literal))) )) ; (assignment_expression "pMVar42 = extraout_RDX" identifier = identifier) ; identifier :) (assignment_expression "uVar21 = (uint)(byte)local_98" identifier = (cast_expression "(uint)(byte)local_98" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier))) (ERROR ";\n  if" ; if) ( (parenthesized_expression "(pMVar42 != pMVar32)" ( (binary_expression "pMVar42 != pMVar32" identifier != identifier) )) && (parenthesized_expression "(*(_Rb_tree_color *)\n       ((long)&(((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8) <= _Var14))" ( (pointer_expression "*(_Rb_tree_color *)\n       ((long)&(((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8) <= _Var14)" * (cast_expression "(_Rb_tree_color *)\n       ((long)&(((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8) <= _Var14)" ( (type_descriptor "_Rb_tree_color *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8) <= _Var14)" ( (binary_expression "(long)&(((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8) <= _Var14" (cast_expression "(long)&(((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8)" & (parenthesized_expression "(((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8)" ( (binary_expression "((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2 + 8" (field_expression "((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_.field_2" (field_expression "((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object.name_" (field_expression "((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n               super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar32->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar32->super_Sized_relobj_file<32,_false" (binary_expression "pMVar32->super_Sized_relobj_file<32" (field_expression "pMVar32->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) . field_identifier) + number_literal) )))) <= identifier) )))) )) (ERROR "{\n    pMVar53" { identifier) = ( (binary_expression "Mips_relobj<32" identifier < number_literal) , identifier > * (ERROR ")" )) ( (field_expression "((Sized_relobj<32,_true> *)\n               &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n              super_Relobj).super_Object.input_file_" (field_expression "((Sized_relobj<32,_true> *)\n               &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n              super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n               &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n              super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n               &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n              super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n               &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n               &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n               &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n               &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n               &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n               &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar32->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar32->super_Sized_relobj_file<32,_false" (binary_expression "pMVar32->super_Sized_relobj_file<32" (field_expression "pMVar32->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) (ERROR ";\n  }\nLAB_002c64ab:\n  local_d0 =" ; } identifier : identifier =) ( (binary_expression "Mips_relobj<32" identifier < number_literal) , (ERROR "_false> *)&symval;" (binary_expression "_false> *)&symval" identifier > (pointer_expression "*)&symval" * (ERROR ")" )) (pointer_expression "&symval" & identifier))) ;) identifier = ( (type_descriptor "_List_node_base **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) & ( (assignment_expression "((Sized_relobj<32,_true> *)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n            super_Relobj).super_Object.name_;\n  symval.u_.value =\n       Mips16_stub_section<32" (field_expression "((Sized_relobj<32,_true> *)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n            super_Relobj).super_Object.name_;\n  symval.u_.value" (field_expression "((Sized_relobj<32,_true> *)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n            super_Relobj).super_Object.name_;\n  symval.u_" (field_expression "((Sized_relobj<32,_true> *)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n            super_Relobj).super_Object.name_" (field_expression "((Sized_relobj<32,_true> *)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n            super_Relobj).super_Object" (parenthesized_expression "((Sized_relobj<32,_true> *)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n            super_Relobj)" ( (field_expression "(Sized_relobj<32,_true> *)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->\n            super_Relobj" (parenthesized_expression "(Sized_relobj<32,_true> *)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)" ( (comma_expression "Sized_relobj<32,_true> *)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "Sized_relobj<32" identifier < number_literal) , (comma_expression "_true> *)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false" (binary_expression "_true> *)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32" (binary_expression "_true> *)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" identifier > (pointer_expression "*)\n             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" * (ERROR ")" )) (pointer_expression "&(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" & (field_expression "(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj" (parenthesized_expression "(pMVar53->super_Sized_relobj_file<32,_false>)" ( (comma_expression "pMVar53->super_Sized_relobj_file<32,_false" (binary_expression "pMVar53->super_Sized_relobj_file<32" (field_expression "pMVar53->super_Sized_relobj_file" identifier -> field_identifier) < number_literal) , identifier) (ERROR ">" >) )) . field_identifier)))) < number_literal) , identifier)) (ERROR ">" >) )) -> field_identifier) )) . field_identifier) . field_identifier) (ERROR ";\n  symval" ; identifier) . field_identifier) . field_identifier) = (binary_expression "Mips16_stub_section<32" identifier < number_literal)) , identifier > (ERROR "::" : :) identifier ( ( (ERROR "Mips16_stub_section<32,_true> *)pMVar53,(Mips16_stub_section<32,_true> *)object);\n  bVar62 = uVar60 == 100;\n  puVar58 = (uint *)0x0;\n  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c7a61;\n  local_e1 = true;\n  bVar61 = bVar62;\nLAB_002c64da:" (comma_expression "Mips16_stub_section<32,_true> *)pMVar53,(Mips16_stub_section<32,_true> *)object)" (binary_expression "Mips16_stub_section<32" identifier < number_literal) , (comma_expression "_true> *)pMVar53,(Mips16_stub_section<32,_true> *)object)" (binary_expression "_true> *)pMVar53" identifier > (pointer_expression "*)pMVar53" * (ERROR ")" )) identifier)) , (parenthesized_expression "(Mips16_stub_section<32,_true> *)object)" ( (comma_expression "Mips16_stub_section<32,_true> *)object" (binary_expression "Mips16_stub_section<32" identifier < number_literal) , (binary_expression "_true> *)object" identifier > (pointer_expression "*)object" * (ERROR ")" )) identifier))) )))) ; (assignment_expression "bVar62 = uVar60 == 100" identifier = (binary_expression "uVar60 == 100" identifier == number_literal)) ; (call_expression "puVar58 = (uint *)0x0;\n  if ((uVar49 & 0xf7) == 0x85)" (assignment_expression "puVar58 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) (ERROR ";\n  if" ; if) (argument_list "((uVar49 & 0xf7) == 0x85)" ( (binary_expression "(uVar49 & 0xf7) == 0x85" (parenthesized_expression "(uVar49 & 0xf7)" ( (binary_expression "uVar49 & 0xf7" identifier & number_literal) )) == number_literal) ))) identifier identifier ; (assignment_expression "local_e1 = true" identifier = true) ; (assignment_expression "bVar61 = bVar62" identifier = identifier) ; identifier :) identifier = ( (ERROR "Mips_relobj<32,_false> *)&symval;\n  puVar58 = (uint *)0x0;" (comma_expression "Mips_relobj<32,_false> *)&symval" (binary_expression "Mips_relobj<32" identifier < number_literal) , (binary_expression "_false> *)&symval" identifier > (pointer_expression "*)&symval" * (ERROR ")" )) (pointer_expression "&symval" & identifier)))) ; (assignment_expression "puVar58 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) identifier = ( (ERROR "Symbol_value<32> *)local_d0;\n  goto LAB_002c4e43;\nLAB_002c7a61:" (binary_expression "Symbol_value<32> *)local_d0" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)local_d0" * (ERROR ")" )) identifier)) ; goto identifier ; identifier :) identifier = ( (ERROR "Symbol_value<32> *)local_d0;\n  local_e1 = true;\n  goto" (binary_expression "Symbol_value<32> *)local_d0" (binary_expression "Symbol_value<32" identifier < number_literal) > (pointer_expression "*)local_d0" * (ERROR ")" )) identifier)) ; (assignment_expression "local_e1 = true" identifier = true) ; goto) (type_descriptor "LAB_002c4e56" type_identifier) ; })
(translation_unit "undefined8\nFUN_002c4b00(ulong *param_1,long param_2,int param_3,long param_4,undefined8 param_5,long param_6,\n            uint *param_7,undefined8 *param_8,uint *param_9,ulong *param_10,uint param_11)\n\n{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  long *plVar3;\n  int *piVar4;\n  ulong uVar5;\n  uint *puVar6;\n  uint uVar7;\n  undefined1 *puVar8;\n  long *plVar9;\n  bool bVar10;\n  byte bVar11;\n  char cVar12;\n  char cVar13;\n  char cVar14;\n  ushort uVar15;\n  uint uVar16;\n  uint uVar17;\n  undefined4 uVar18;\n  uint uVar19;\n  int iVar20;\n  undefined8 uVar21;\n  undefined8 uVar22;\n  ulong uVar23;\n  long lVar24;\n  ulong uVar25;\n  long *plVar26;\n  long *plVar27;\n  long *plVar28;\n  ushort uVar29;\n  long lVar30;\n  int extraout_EDX;\n  uint uVar31;\n  uint uVar32;\n  long *plVar33;\n  ulong uVar34;\n  uint uVar35;\n  uint uVar36;\n  ulong *puVar37;\n  int iVar38;\n  byte *pbVar39;\n  undefined8 *puVar40;\n  byte *pbVar41;\n  char *pcVar42;\n  undefined8 uVar43;\n  uint *puVar44;\n  uint uVar45;\n  ulong uVar46;\n  uint uVar47;\n  bool bVar48;\n  bool bVar49;\n  bool bVar50;\n  bool bVar51;\n  byte bVar52;\n  uint local_130;\n  sbyte local_118;\n  undefined8 *local_108;\n  uint local_f4;\n  byte local_ec;\n  uint local_e8;\n  byte local_e3;\n  byte local_e2;\n  bool local_e1;\n  uint *local_d0;\n  uint local_c8;\n  uint local_c4;\n  uint local_c0;\n  uint local_b0;\n  undefined8 *local_98;\n  uint local_84;\n  uint auStack_80 [2];\n  undefined8 local_78;\n  undefined4 local_70;\n  uint local_68;\n  undefined1 *local_58 [2];\n  undefined1 auStack_48 [24];\n  \n  bVar52 = 0;\n  uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14);\n  uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24);\n  uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18);\n  uVar17 = *param_7;\n  uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar17 = param_7[1];\n  uVar47 = uVar17 >> 0x18;\n  uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar34 = (ulong)uVar36;\n  uVar7 = uVar36 >> 8;\n  if (param_3 == 4) {\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }\n  else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }\n  local_70 = 0x80000000;\n  local_68 = 0;\n  plVar3 = *(long **)(param_2 + 0x10);\n  local_78 = 0xffffffff00000000;\n  if (param_8 == (undefined8 *)0x0) {\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    \n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    \n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    \n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }\n  else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    \n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  if (*(int *)((long)param_8 + 0x4c) == -1) {\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c5256:\n  local_d0 = (uint *)&local_78;\n  uVar36 = (uint)uVar34;\n  if (((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')) {\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }\n  goto LAB_002c52f0;\nLAB_002c82c4:\n  FUN_00293370();\nLAB_002c82c9:\n  uVar36 = (uint)uVar34;\n  if ((char)puVar44 == '\0') {\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }\n  else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar17;\n  bVar49 = (bool)((byte)local_98 & bVar48);\n  goto joined_r0x002c52d3;\nswitchD_002c4f87_caseD_9:\n  bVar48 = false;\nswitchD_002c5379_caseD_9:\n  if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }\n  if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8333;\n  puVar40 = param_8;\n  local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n  local_98._0_1_ = (byte)puVar40;\n  lVar30 = *(long *)(param_4 + 0x20);\n  if (lVar30 != 0) goto LAB_002c6206;\n  FUN_00290a70();\nLAB_002c6490:\n  uVar17 = (uint)(byte)local_98;\nLAB_002c64ab:\n  local_d0 = (uint *)&local_78;\n  local_68 = FUN_00298450();\n  bVar49 = uVar47 == 100;\n  puVar44 = (uint *)0x0;\n  if ((uVar36 & 0xf7) == 0x85) goto LAB_002c7a61;\n  local_e1 = true;\n  bVar48 = bVar49;\nLAB_002c64da:\n  local_d0 = (uint *)&local_78;\n  puVar44 = (uint *)0x0;\n  param_9 = local_d0;\n  goto LAB_002c4e43;\nLAB_002c7a61:\n  param_9 = local_d0;\n  local_e1 = true;\n  goto LAB_002c4e56;\n}\n\n" (function_definition "undefined8\nFUN_002c4b00(ulong *param_1,long param_2,int param_3,long param_4,undefined8 param_5,long param_6,\n            uint *param_7,undefined8 *param_8,uint *param_9,ulong *param_10,uint param_11)\n\n{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  long *plVar3;\n  int *piVar4;\n  ulong uVar5;\n  uint *puVar6;\n  uint uVar7;\n  undefined1 *puVar8;\n  long *plVar9;\n  bool bVar10;\n  byte bVar11;\n  char cVar12;\n  char cVar13;\n  char cVar14;\n  ushort uVar15;\n  uint uVar16;\n  uint uVar17;\n  undefined4 uVar18;\n  uint uVar19;\n  int iVar20;\n  undefined8 uVar21;\n  undefined8 uVar22;\n  ulong uVar23;\n  long lVar24;\n  ulong uVar25;\n  long *plVar26;\n  long *plVar27;\n  long *plVar28;\n  ushort uVar29;\n  long lVar30;\n  int extraout_EDX;\n  uint uVar31;\n  uint uVar32;\n  long *plVar33;\n  ulong uVar34;\n  uint uVar35;\n  uint uVar36;\n  ulong *puVar37;\n  int iVar38;\n  byte *pbVar39;\n  undefined8 *puVar40;\n  byte *pbVar41;\n  char *pcVar42;\n  undefined8 uVar43;\n  uint *puVar44;\n  uint uVar45;\n  ulong uVar46;\n  uint uVar47;\n  bool bVar48;\n  bool bVar49;\n  bool bVar50;\n  bool bVar51;\n  byte bVar52;\n  uint local_130;\n  sbyte local_118;\n  undefined8 *local_108;\n  uint local_f4;\n  byte local_ec;\n  uint local_e8;\n  byte local_e3;\n  byte local_e2;\n  bool local_e1;\n  uint *local_d0;\n  uint local_c8;\n  uint local_c4;\n  uint local_c0;\n  uint local_b0;\n  undefined8 *local_98;\n  uint local_84;\n  uint auStack_80 [2];\n  undefined8 local_78;\n  undefined4 local_70;\n  uint local_68;\n  undefined1 *local_58 [2];\n  undefined1 auStack_48 [24];\n  \n  bVar52 = 0;\n  uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14);\n  uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24);\n  uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18);\n  uVar17 = *param_7;\n  uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar17 = param_7[1];\n  uVar47 = uVar17 >> 0x18;\n  uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar34 = (ulong)uVar36;\n  uVar7 = uVar36 >> 8;\n  if (param_3 == 4) {\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }\n  else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }\n  local_70 = 0x80000000;\n  local_68 = 0;\n  plVar3 = *(long **)(param_2 + 0x10);\n  local_78 = 0xffffffff00000000;\n  if (param_8 == (undefined8 *)0x0) {\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    \n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    \n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    \n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }\n  else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    \n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  if (*(int *)((long)param_8 + 0x4c) == -1) {\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c5256:\n  local_d0 = (uint *)&local_78;\n  uVar36 = (uint)uVar34;\n  if (((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')) {\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }\n  goto LAB_002c52f0;\nLAB_002c82c4:\n  FUN_00293370();\nLAB_002c82c9:\n  uVar36 = (uint)uVar34;\n  if ((char)puVar44 == '\0') {\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }\n  else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar17;\n  bVar49 = (bool)((byte)local_98 & bVar48);\n  goto joined_r0x002c52d3;\nswitchD_002c4f87_caseD_9:\n  bVar48 = false;\nswitchD_002c5379_caseD_9:\n  if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }\n  if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8333;\n  puVar40 = param_8;\n  local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n  local_98._0_1_ = (byte)puVar40;\n  lVar30 = *(long *)(param_4 + 0x20);\n  if (lVar30 != 0) goto LAB_002c6206;\n  FUN_00290a70();\nLAB_002c6490:\n  uVar17 = (uint)(byte)local_98;\nLAB_002c64ab:\n  local_d0 = (uint *)&local_78;\n  local_68 = FUN_00298450();\n  bVar49 = uVar47 == 100;\n  puVar44 = (uint *)0x0;\n  if ((uVar36 & 0xf7) == 0x85) goto LAB_002c7a61;\n  local_e1 = true;\n  bVar48 = bVar49;\nLAB_002c64da:\n  local_d0 = (uint *)&local_78;\n  puVar44 = (uint *)0x0;\n  param_9 = local_d0;\n  goto LAB_002c4e43;\nLAB_002c7a61:\n  param_9 = local_d0;\n  local_e1 = true;\n  goto LAB_002c4e56;\n}" type_identifier (function_declarator "FUN_002c4b00(ulong *param_1,long param_2,int param_3,long param_4,undefined8 param_5,long param_6,\n            uint *param_7,undefined8 *param_8,uint *param_9,ulong *param_10,uint param_11)" identifier (parameter_list "(ulong *param_1,long param_2,int param_3,long param_4,undefined8 param_5,long param_6,\n            uint *param_7,undefined8 *param_8,uint *param_9,ulong *param_10,uint param_11)" ( (parameter_declaration "ulong *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "long param_2" (sized_type_specifier "long" long) identifier) , (parameter_declaration "int param_3" primitive_type identifier) , (parameter_declaration "long param_4" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined8 param_5" type_identifier identifier) , (parameter_declaration "long param_6" (sized_type_specifier "long" long) identifier) , (parameter_declaration "uint *param_7" type_identifier (pointer_declarator "*param_7" * identifier)) , (parameter_declaration "undefined8 *param_8" type_identifier (pointer_declarator "*param_8" * identifier)) , (parameter_declaration "uint *param_9" type_identifier (pointer_declarator "*param_9" * identifier)) , (parameter_declaration "ulong *param_10" type_identifier (pointer_declarator "*param_10" * identifier)) , (parameter_declaration "uint param_11" type_identifier identifier) ))) (compound_statement "{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  long *plVar3;\n  int *piVar4;\n  ulong uVar5;\n  uint *puVar6;\n  uint uVar7;\n  undefined1 *puVar8;\n  long *plVar9;\n  bool bVar10;\n  byte bVar11;\n  char cVar12;\n  char cVar13;\n  char cVar14;\n  ushort uVar15;\n  uint uVar16;\n  uint uVar17;\n  undefined4 uVar18;\n  uint uVar19;\n  int iVar20;\n  undefined8 uVar21;\n  undefined8 uVar22;\n  ulong uVar23;\n  long lVar24;\n  ulong uVar25;\n  long *plVar26;\n  long *plVar27;\n  long *plVar28;\n  ushort uVar29;\n  long lVar30;\n  int extraout_EDX;\n  uint uVar31;\n  uint uVar32;\n  long *plVar33;\n  ulong uVar34;\n  uint uVar35;\n  uint uVar36;\n  ulong *puVar37;\n  int iVar38;\n  byte *pbVar39;\n  undefined8 *puVar40;\n  byte *pbVar41;\n  char *pcVar42;\n  undefined8 uVar43;\n  uint *puVar44;\n  uint uVar45;\n  ulong uVar46;\n  uint uVar47;\n  bool bVar48;\n  bool bVar49;\n  bool bVar50;\n  bool bVar51;\n  byte bVar52;\n  uint local_130;\n  sbyte local_118;\n  undefined8 *local_108;\n  uint local_f4;\n  byte local_ec;\n  uint local_e8;\n  byte local_e3;\n  byte local_e2;\n  bool local_e1;\n  uint *local_d0;\n  uint local_c8;\n  uint local_c4;\n  uint local_c0;\n  uint local_b0;\n  undefined8 *local_98;\n  uint local_84;\n  uint auStack_80 [2];\n  undefined8 local_78;\n  undefined4 local_70;\n  uint local_68;\n  undefined1 *local_58 [2];\n  undefined1 auStack_48 [24];\n  \n  bVar52 = 0;\n  uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14);\n  uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24);\n  uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18);\n  uVar17 = *param_7;\n  uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar17 = param_7[1];\n  uVar47 = uVar17 >> 0x18;\n  uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar34 = (ulong)uVar36;\n  uVar7 = uVar36 >> 8;\n  if (param_3 == 4) {\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }\n  else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }\n  local_70 = 0x80000000;\n  local_68 = 0;\n  plVar3 = *(long **)(param_2 + 0x10);\n  local_78 = 0xffffffff00000000;\n  if (param_8 == (undefined8 *)0x0) {\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    \n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    \n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    \n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }\n  else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    \n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  if (*(int *)((long)param_8 + 0x4c) == -1) {\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c5256:\n  local_d0 = (uint *)&local_78;\n  uVar36 = (uint)uVar34;\n  if (((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')) {\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }\n  goto LAB_002c52f0;\nLAB_002c82c4:\n  FUN_00293370();\nLAB_002c82c9:\n  uVar36 = (uint)uVar34;\n  if ((char)puVar44 == '\0') {\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }\n  else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar17;\n  bVar49 = (bool)((byte)local_98 & bVar48);\n  goto joined_r0x002c52d3;\nswitchD_002c4f87_caseD_9:\n  bVar48 = false;\nswitchD_002c5379_caseD_9:\n  if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }\n  if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8333;\n  puVar40 = param_8;\n  local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n  local_98._0_1_ = (byte)puVar40;\n  lVar30 = *(long *)(param_4 + 0x20);\n  if (lVar30 != 0) goto LAB_002c6206;\n  FUN_00290a70();\nLAB_002c6490:\n  uVar17 = (uint)(byte)local_98;\nLAB_002c64ab:\n  local_d0 = (uint *)&local_78;\n  local_68 = FUN_00298450();\n  bVar49 = uVar47 == 100;\n  puVar44 = (uint *)0x0;\n  if ((uVar36 & 0xf7) == 0x85) goto LAB_002c7a61;\n  local_e1 = true;\n  bVar48 = bVar49;\nLAB_002c64da:\n  local_d0 = (uint *)&local_78;\n  puVar44 = (uint *)0x0;\n  param_9 = local_d0;\n  goto LAB_002c4e43;\nLAB_002c7a61:\n  param_9 = local_d0;\n  local_e1 = true;\n  goto LAB_002c4e56;\n}" { (declaration "undefined4 uVar1;" type_identifier identifier ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "long *plVar3;" (sized_type_specifier "long" long) (pointer_declarator "*plVar3" * identifier) ;) (declaration "int *piVar4;" primitive_type (pointer_declarator "*piVar4" * identifier) ;) (declaration "ulong uVar5;" type_identifier identifier ;) (declaration "uint *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "undefined1 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "long *plVar9;" (sized_type_specifier "long" long) (pointer_declarator "*plVar9" * identifier) ;) (declaration "bool bVar10;" primitive_type identifier ;) (declaration "byte bVar11;" type_identifier identifier ;) (declaration "char cVar12;" primitive_type identifier ;) (declaration "char cVar13;" primitive_type identifier ;) (declaration "char cVar14;" primitive_type identifier ;) (declaration "ushort uVar15;" type_identifier identifier ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "undefined4 uVar18;" type_identifier identifier ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "int iVar20;" primitive_type identifier ;) (declaration "undefined8 uVar21;" type_identifier identifier ;) (declaration "undefined8 uVar22;" type_identifier identifier ;) (declaration "ulong uVar23;" type_identifier identifier ;) (declaration "long lVar24;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong uVar25;" type_identifier identifier ;) (declaration "long *plVar26;" (sized_type_specifier "long" long) (pointer_declarator "*plVar26" * identifier) ;) (declaration "long *plVar27;" (sized_type_specifier "long" long) (pointer_declarator "*plVar27" * identifier) ;) (declaration "long *plVar28;" (sized_type_specifier "long" long) (pointer_declarator "*plVar28" * identifier) ;) (declaration "ushort uVar29;" type_identifier identifier ;) (declaration "long lVar30;" (sized_type_specifier "long" long) identifier ;) (declaration "int extraout_EDX;" primitive_type identifier ;) (declaration "uint uVar31;" type_identifier identifier ;) (declaration "uint uVar32;" type_identifier identifier ;) (declaration "long *plVar33;" (sized_type_specifier "long" long) (pointer_declarator "*plVar33" * identifier) ;) (declaration "ulong uVar34;" type_identifier identifier ;) (declaration "uint uVar35;" type_identifier identifier ;) (declaration "uint uVar36;" type_identifier identifier ;) (declaration "ulong *puVar37;" type_identifier (pointer_declarator "*puVar37" * identifier) ;) (declaration "int iVar38;" primitive_type identifier ;) (declaration "byte *pbVar39;" type_identifier (pointer_declarator "*pbVar39" * identifier) ;) (declaration "undefined8 *puVar40;" type_identifier (pointer_declarator "*puVar40" * identifier) ;) (declaration "byte *pbVar41;" type_identifier (pointer_declarator "*pbVar41" * identifier) ;) (declaration "char *pcVar42;" primitive_type (pointer_declarator "*pcVar42" * identifier) ;) (declaration "undefined8 uVar43;" type_identifier identifier ;) (declaration "uint *puVar44;" type_identifier (pointer_declarator "*puVar44" * identifier) ;) (declaration "uint uVar45;" type_identifier identifier ;) (declaration "ulong uVar46;" type_identifier identifier ;) (declaration "uint uVar47;" type_identifier identifier ;) (declaration "bool bVar48;" primitive_type identifier ;) (declaration "bool bVar49;" primitive_type identifier ;) (declaration "bool bVar50;" primitive_type identifier ;) (declaration "bool bVar51;" primitive_type identifier ;) (declaration "byte bVar52;" type_identifier identifier ;) (declaration "uint local_130;" type_identifier identifier ;) (declaration "sbyte local_118;" type_identifier identifier ;) (declaration "undefined8 *local_108;" type_identifier (pointer_declarator "*local_108" * identifier) ;) (declaration "uint local_f4;" type_identifier identifier ;) (declaration "byte local_ec;" type_identifier identifier ;) (declaration "uint local_e8;" type_identifier identifier ;) (declaration "byte local_e3;" type_identifier identifier ;) (declaration "byte local_e2;" type_identifier identifier ;) (declaration "bool local_e1;" primitive_type identifier ;) (declaration "uint *local_d0;" type_identifier (pointer_declarator "*local_d0" * identifier) ;) (declaration "uint local_c8;" type_identifier identifier ;) (declaration "uint local_c4;" type_identifier identifier ;) (declaration "uint local_c0;" type_identifier identifier ;) (declaration "uint local_b0;" type_identifier identifier ;) (declaration "undefined8 *local_98;" type_identifier (pointer_declarator "*local_98" * identifier) ;) (declaration "uint local_84;" type_identifier identifier ;) (declaration "uint auStack_80 [2];" type_identifier (array_declarator "auStack_80 [2]" identifier [ number_literal ]) ;) (declaration "undefined8 local_78;" type_identifier identifier ;) (declaration "undefined4 local_70;" type_identifier identifier ;) (declaration "uint local_68;" type_identifier identifier ;) (declaration "undefined1 *local_58 [2];" type_identifier (pointer_declarator "*local_58 [2]" * (array_declarator "local_58 [2]" identifier [ number_literal ])) ;) (declaration "undefined1 auStack_48 [24];" type_identifier (array_declarator "auStack_48 [24]" identifier [ number_literal ]) ;) (expression_statement "bVar52 = 0;" (assignment_expression "bVar52 = 0" identifier = number_literal) ;) (expression_statement "uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14);" (assignment_expression "uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14)" identifier = (pointer_expression "*(uint *)(*(long *)(param_2 + 0x20) + 0x14)" * (cast_expression "(uint *)(*(long *)(param_2 + 0x20) + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x14)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x14" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24);" (assignment_expression "uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24)" identifier = (pointer_expression "*(uint *)(*(long *)(param_2 + 0x20) + 0x24)" * (cast_expression "(uint *)(*(long *)(param_2 + 0x20) + 0x24)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x24)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x24" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18);" (assignment_expression "uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18)" identifier = (binary_expression "(ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18)" (call_expression "(ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18)" ( (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal)) ))) / (call_expression "(ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18)" ( (binary_expression "uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18" (binary_expression "uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8" (binary_expression "uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8" (binary_expression "uVar47 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar47 & 0xff0000) >> 8" (parenthesized_expression "(uVar47 & 0xff0000)" ( (binary_expression "uVar47 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar47 & 0xff00) << 8" (parenthesized_expression "(uVar47 & 0xff00)" ( (binary_expression "uVar47 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar47 << 0x18" identifier << number_literal)) ))))) ;) (expression_statement "uVar17 = *param_7;" (assignment_expression "uVar17 = *param_7" identifier = (pointer_expression "*param_7" * identifier)) ;) (expression_statement "uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;" (assignment_expression "uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar17 = param_7[1];" (assignment_expression "uVar17 = param_7[1]" identifier = (subscript_expression "param_7[1]" identifier [ number_literal ])) ;) (expression_statement "uVar47 = uVar17 >> 0x18;" (assignment_expression "uVar47 = uVar17 >> 0x18" identifier = (binary_expression "uVar17 >> 0x18" identifier >> number_literal)) ;) (expression_statement "uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;" (assignment_expression "uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" identifier = (binary_expression "uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar47 | (uVar17 & 0xff0000) >> 8" identifier | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar34 = (ulong)uVar36;" (assignment_expression "uVar34 = (ulong)uVar36" identifier = (cast_expression "(ulong)uVar36" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar7 = uVar36 >> 8;" (assignment_expression "uVar7 = uVar36 >> 8" identifier = (binary_expression "uVar36 >> 8" identifier >> number_literal)) ;) (if_statement "if (param_3 == 4) {\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }\n  else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" if (parenthesized_expression "(param_3 == 4)" ( (binary_expression "param_3 == 4" identifier == number_literal) )) (compound_statement "{\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }" { (expression_statement "local_c4 = 0;" (assignment_expression "local_c4 = 0" identifier = number_literal) ;) (expression_statement "uVar16 = param_7[2];" (assignment_expression "uVar16 = param_7[2]" identifier = (subscript_expression "param_7[2]" identifier [ number_literal ])) ;) (expression_statement "local_b0 = 0xffffffff;" (assignment_expression "local_b0 = 0xffffffff" identifier = number_literal) ;) (expression_statement "local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;" (assignment_expression "local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" identifier = (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" ( (binary_expression "uVar16 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar16 & 0xff00) << 8" (parenthesized_expression "(uVar16 & 0xff00)" ( (binary_expression "uVar16 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar16 << 0x18" identifier << number_literal))) ;) (if_statement "if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }" if (parenthesized_expression "(param_6 + 1U < uVar23)" ( (binary_expression "param_6 + 1U < uVar23" (binary_expression "param_6 + 1U" identifier + number_literal) < identifier) )) (compound_statement "{\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }" { (expression_statement "uVar16 = param_7[3];" (assignment_expression "uVar16 = param_7[3]" identifier = (subscript_expression "param_7[3]" identifier [ number_literal ])) ;) (expression_statement "local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;" (assignment_expression "local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" identifier = (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" ( (binary_expression "uVar16 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar16 & 0xff00) << 8" (parenthesized_expression "(uVar16 & 0xff00)" ( (binary_expression "uVar16 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar16 << 0x18" identifier << number_literal))) ;) (expression_statement "local_c4 = param_7[4] >> 0x18;" (assignment_expression "local_c4 = param_7[4] >> 0x18" identifier = (binary_expression "param_7[4] >> 0x18" (subscript_expression "param_7[4]" identifier [ number_literal ]) >> number_literal)) ;) })) }) (else_clause "else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" else (if_statement "if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" if (parenthesized_expression "(param_6 + 1U < uVar23)" ( (binary_expression "param_6 + 1U < uVar23" (binary_expression "param_6 + 1U" identifier + number_literal) < identifier) )) (compound_statement "{\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }" { (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) (expression_statement "uVar16 = param_7[2];" (assignment_expression "uVar16 = param_7[2]" identifier = (subscript_expression "param_7[2]" identifier [ number_literal ])) ;) (expression_statement "local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;" (assignment_expression "local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" identifier = (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" ( (binary_expression "uVar16 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar16 & 0xff00) << 8" (parenthesized_expression "(uVar16 & 0xff00)" ( (binary_expression "uVar16 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar16 << 0x18" identifier << number_literal))) ;) (expression_statement "local_c4 = param_7[3] >> 0x18;" (assignment_expression "local_c4 = param_7[3] >> 0x18" identifier = (binary_expression "param_7[3] >> 0x18" (subscript_expression "param_7[3]" identifier [ number_literal ]) >> number_literal)) ;) }) (else_clause "else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" else (compound_statement "{\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" { (expression_statement "local_c4 = 0;" (assignment_expression "local_c4 = 0" identifier = number_literal) ;) (expression_statement "local_b0 = 0xffffffff;" (assignment_expression "local_b0 = 0xffffffff" identifier = number_literal) ;) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" identifier = number_literal) ;) }))))) (expression_statement "local_70 = 0x80000000;" (assignment_expression "local_70 = 0x80000000" identifier = number_literal) ;) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" identifier = number_literal) ;) (expression_statement "plVar3 = *(long **)(param_2 + 0x10);" (assignment_expression "plVar3 = *(long **)(param_2 + 0x10)" identifier = (pointer_expression "*(long **)(param_2 + 0x10)" * (cast_expression "(long **)(param_2 + 0x10)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "local_78 = 0xffffffff00000000;" (assignment_expression "local_78 = 0xffffffff00000000" identifier = number_literal) ;) (if_statement "if (param_8 == (undefined8 *)0x0) {\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    \n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    \n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    \n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }\n  else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    \n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    \n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    \n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    \n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }" { (if_statement "if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    \n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }" if (parenthesized_expression "(((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7)" ( (binary_expression "((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7" (binary_expression "((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46)" (parenthesized_expression "((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8)" ( (binary_expression "(ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8" (binary_expression "(ulong)*(uint *)(plVar3 + 0x48)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(plVar3 + 0x48)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 0x48)" ( (binary_expression "plVar3 + 0x48" identifier + number_literal) )))) + (binary_expression "(plVar3[0x47] - plVar3[0x45]) * 8" (parenthesized_expression "(plVar3[0x47] - plVar3[0x45])" ( (binary_expression "plVar3[0x47] - plVar3[0x45]" (subscript_expression "plVar3[0x47]" identifier [ number_literal ]) - (subscript_expression "plVar3[0x45]" identifier [ number_literal ])) )) * number_literal)) )) - (binary_expression "(ulong)*(uint *)(plVar3 + 0x46)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(plVar3 + 0x46)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 0x46)" ( (binary_expression "plVar3 + 0x46" identifier + number_literal) ))))) <= (cast_expression "(ulong)uVar7" ( (type_descriptor "ulong" type_identifier) ) identifier)) )) (compound_statement "{\n                    \n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }" { (expression_statement "FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16")" identifier (argument_list "("../../gold/mips.cc",0x65f,"local_symbol_is_mips16")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""local_symbol_is_mips16"" " string_content ") ))) ;) })) (expression_statement "local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);" (assignment_expression "local_ec = (byte)((uVar17 & 0xff0000) >> 0x10)" identifier = (call_expression "(byte)((uVar17 & 0xff0000) >> 0x10)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((uVar17 & 0xff0000) >> 0x10)" ( (binary_expression "(uVar17 & 0xff0000) >> 0x10" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal) )))) ;) (expression_statement "uVar25 = 1L << (local_ec & 0x3f);" (assignment_expression "uVar25 = 1L << (local_ec & 0x3f)" identifier = (binary_expression "1L << (local_ec & 0x3f)" number_literal << (parenthesized_expression "(local_ec & 0x3f)" ( (binary_expression "local_ec & 0x3f" identifier & number_literal) )))) ;) (expression_statement "uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);" (assignment_expression "uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8)" identifier = (pointer_expression "*(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8)" * (cast_expression "(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8)" ( (binary_expression "plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8" (subscript_expression "plVar3[0x45]" identifier [ number_literal ]) + (binary_expression "(ulong)(uVar36 >> 0xe) * 8" (call_expression "(ulong)(uVar36 >> 0xe)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar36 >> 0xe)" ( (binary_expression "uVar36 >> 0xe" identifier >> number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar46 = uVar25 & uVar23;" (assignment_expression "uVar46 = uVar25 & uVar23" identifier = (binary_expression "uVar25 & uVar23" identifier & identifier)) ;) (expression_statement "puVar44 = (uint *)(ulong)(uVar46 != 0);" (assignment_expression "puVar44 = (uint *)(ulong)(uVar46 != 0)" identifier = (cast_expression "(uint *)(ulong)(uVar46 != 0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(ulong)(uVar46 != 0)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar46 != 0)" ( (binary_expression "uVar46 != 0" identifier != number_literal) ))))) ;) (if_statement "if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }" if (parenthesized_expression "(((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7)" ( (binary_expression "((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7" (binary_expression "((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b)" (parenthesized_expression "((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8)" ( (binary_expression "(ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8" (binary_expression "(ulong)*(uint *)(plVar3 + 0x4d)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(plVar3 + 0x4d)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 0x4d)" ( (binary_expression "plVar3 + 0x4d" identifier + number_literal) )))) + (binary_expression "(plVar3[0x4c] - plVar3[0x4a]) * 8" (parenthesized_expression "(plVar3[0x4c] - plVar3[0x4a])" ( (binary_expression "plVar3[0x4c] - plVar3[0x4a]" (subscript_expression "plVar3[0x4c]" identifier [ number_literal ]) - (subscript_expression "plVar3[0x4a]" identifier [ number_literal ])) )) * number_literal)) )) - (binary_expression "(ulong)*(uint *)(plVar3 + 0x4b)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(plVar3 + 0x4b)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 0x4b)" ( (binary_expression "plVar3 + 0x4b" identifier + number_literal) ))))) <= (cast_expression "(ulong)uVar7" ( (type_descriptor "ulong" type_identifier) ) identifier)) )) (compound_statement "{\nLAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }" { (labeled_statement "LAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");" statement_identifier : (expression_statement "FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips")" identifier (argument_list "("../../gold/mips.cc",0x668,"local_symbol_is_micromips")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""local_symbol_is_micromips"" " string_content ") ))) ;)) })) (expression_statement "uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);" (assignment_expression "uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8)" identifier = (pointer_expression "*(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8)" * (cast_expression "(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8)" ( (binary_expression "plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8" (subscript_expression "plVar3[0x4a]" identifier [ number_literal ]) + (binary_expression "(ulong)(uVar36 >> 0xe) * 8" (call_expression "(ulong)(uVar36 >> 0xe)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar36 >> 0xe)" ( (binary_expression "uVar36 >> 0xe" identifier >> number_literal) ))) * number_literal)) ))))) ;) (expression_statement "uVar17 = (uint)((uVar25 & uVar5) != 0);" (assignment_expression "uVar17 = (uint)((uVar25 & uVar5) != 0)" identifier = (call_expression "(uint)((uVar25 & uVar5) != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((uVar25 & uVar5) != 0)" ( (binary_expression "(uVar25 & uVar5) != 0" (parenthesized_expression "(uVar25 & uVar5)" ( (binary_expression "uVar25 & uVar5" identifier & identifier) )) != number_literal) )))) ;) (expression_statement "local_e1 = ((uVar23 | uVar5) & uVar25) != 0;" (assignment_expression "local_e1 = ((uVar23 | uVar5) & uVar25) != 0" identifier = (binary_expression "((uVar23 | uVar5) & uVar25) != 0" (parenthesized_expression "((uVar23 | uVar5) & uVar25)" ( (binary_expression "(uVar23 | uVar5) & uVar25" (parenthesized_expression "(uVar23 | uVar5)" ( (binary_expression "uVar23 | uVar5" identifier | identifier) )) & identifier) )) != number_literal)) ;) (if_statement "if (local_e1) {\n                    \n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }" if (parenthesized_expression "(local_e1)" ( identifier )) (compound_statement "{\n                    \n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }" { (expression_statement "local_68 = FUN_001d7270(param_9,plVar3,1);" (assignment_expression "local_68 = FUN_001d7270(param_9,plVar3,1)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,1)" identifier (argument_list "(param_9,plVar3,1)" ( identifier , identifier , number_literal )))) ;) (expression_statement "param_9 = (uint *)&local_78;" (assignment_expression "param_9 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;) })) (if_statement "if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }" if (parenthesized_expression "(uVar47 == 100)" ( (binary_expression "uVar47 == 100" identifier == number_literal) )) (compound_statement "{\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }" { (expression_statement "plVar33 = (long *)plVar3[0x69];" (assignment_expression "plVar33 = (long *)plVar3[0x69]" identifier = (cast_expression "(long *)plVar3[0x69]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar3[0x69]" identifier [ number_literal ]))) ;) (expression_statement "plVar9 = plVar3 + 0x68;" (assignment_expression "plVar9 = plVar3 + 0x68" identifier = (binary_expression "plVar3 + 0x68" identifier + number_literal)) ;) (expression_statement "plVar28 = plVar33;" (assignment_expression "plVar28 = plVar33" identifier = identifier) ;) (expression_statement "plVar27 = plVar9;" (assignment_expression "plVar27 = plVar9" identifier = identifier) ;) (if_statement "if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }" if (parenthesized_expression "(plVar33 != (long *)0x0)" ( (binary_expression "plVar33 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }" { (do_statement "do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);" do (compound_statement "{\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        }" { (if_statement "if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }" if (parenthesized_expression "(*(uint *)(plVar28 + 4) < uVar7)" ( (binary_expression "*(uint *)(plVar28 + 4) < uVar7" (pointer_expression "*(uint *)(plVar28 + 4)" * (cast_expression "(uint *)(plVar28 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar28 + 4)" ( (binary_expression "plVar28 + 4" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n            plVar26 = (long *)plVar28[3];\n          }" { (expression_statement "plVar26 = (long *)plVar28[3];" (assignment_expression "plVar26 = (long *)plVar28[3]" identifier = (cast_expression "(long *)plVar28[3]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar28[3]" identifier [ number_literal ]))) ;) }) (else_clause "else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }" else (compound_statement "{\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }" { (expression_statement "plVar26 = (long *)plVar28[2];" (assignment_expression "plVar26 = (long *)plVar28[2]" identifier = (cast_expression "(long *)plVar28[2]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar28[2]" identifier [ number_literal ]))) ;) (expression_statement "plVar27 = plVar28;" (assignment_expression "plVar27 = plVar28" identifier = identifier) ;) }))) (expression_statement "plVar28 = plVar26;" (assignment_expression "plVar28 = plVar26" identifier = identifier) ;) }) while (parenthesized_expression "(plVar26 != (long *)0x0)" ( (binary_expression "plVar26 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) (if_statement "if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }" if (parenthesized_expression "(((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0))" ( (binary_expression "((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)" (parenthesized_expression "((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7))" ( (binary_expression "(plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)" (parenthesized_expression "(plVar9 != plVar27)" ( (binary_expression "plVar9 != plVar27" identifier != identifier) )) && (parenthesized_expression "(*(uint *)(plVar27 + 4) <= uVar7)" ( (binary_expression "*(uint *)(plVar27 + 4) <= uVar7" (pointer_expression "*(uint *)(plVar27 + 4)" * (cast_expression "(uint *)(plVar27 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar27 + 4)" ( (binary_expression "plVar27 + 4" identifier + number_literal) )))) <= identifier) ))) )) && (parenthesized_expression "(plVar27[5] != 0)" ( (binary_expression "plVar27[5] != 0" (subscript_expression "plVar27[5]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }" { (expression_statement "plVar28 = plVar9;" (assignment_expression "plVar28 = plVar9" identifier = identifier) ;) (if_statement "if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }" if (parenthesized_expression "(uVar46 == 0)" ( (binary_expression "uVar46 == 0" identifier == number_literal) )) (compound_statement "{\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }" { (do_statement "do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);" do (compound_statement "{\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            }" { (expression_statement "plVar27 = plVar33;" (assignment_expression "plVar27 = plVar33" identifier = identifier) ;) (if_statement "if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }" if (parenthesized_expression "(*(uint *)(plVar27 + 4) < uVar7)" ( (binary_expression "*(uint *)(plVar27 + 4) < uVar7" (pointer_expression "*(uint *)(plVar27 + 4)" * (cast_expression "(uint *)(plVar27 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar27 + 4)" ( (binary_expression "plVar27 + 4" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }" { (expression_statement "plVar33 = (long *)plVar27[3];" (assignment_expression "plVar33 = (long *)plVar27[3]" identifier = (cast_expression "(long *)plVar27[3]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar27[3]" identifier [ number_literal ]))) ;) (expression_statement "plVar27 = plVar28;" (assignment_expression "plVar27 = plVar28" identifier = identifier) ;) }) (else_clause "else {\n                plVar33 = (long *)plVar27[2];\n              }" else (compound_statement "{\n                plVar33 = (long *)plVar27[2];\n              }" { (expression_statement "plVar33 = (long *)plVar27[2];" (assignment_expression "plVar33 = (long *)plVar27[2]" identifier = (cast_expression "(long *)plVar27[2]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar27[2]" identifier [ number_literal ]))) ;) }))) (expression_statement "plVar28 = plVar27;" (assignment_expression "plVar28 = plVar27" identifier = identifier) ;) }) while (parenthesized_expression "(plVar33 != (long *)0x0)" ( (binary_expression "plVar33 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) (expression_statement "lVar30 = 0;" (assignment_expression "lVar30 = 0" identifier = number_literal) ;) (if_statement "if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }" if (parenthesized_expression "((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7))" ( (binary_expression "(plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)" (parenthesized_expression "(plVar9 != plVar27)" ( (binary_expression "plVar9 != plVar27" identifier != identifier) )) && (parenthesized_expression "(*(uint *)(plVar27 + 4) <= uVar7)" ( (binary_expression "*(uint *)(plVar27 + 4) <= uVar7" (pointer_expression "*(uint *)(plVar27 + 4)" * (cast_expression "(uint *)(plVar27 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar27 + 4)" ( (binary_expression "plVar27 + 4" identifier + number_literal) )))) <= identifier) ))) )) (compound_statement "{\n              lVar30 = plVar27[5];\n            }" { (expression_statement "lVar30 = plVar27[5];" (assignment_expression "lVar30 = plVar27[5]" identifier = (subscript_expression "plVar27[5]" identifier [ number_literal ])) ;) })) (expression_statement "puVar44 = (uint *)0x0;" (assignment_expression "puVar44 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "cVar12 = '\0';" (assignment_expression "cVar12 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;) })) (expression_statement "puVar44 = (uint *)0x1;" (assignment_expression "puVar44 = (uint *)0x1" identifier = (cast_expression "(uint *)0x1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) })) (labeled_statement "LAB_002c56d8:\n      cVar12 = '\0';" statement_identifier : (expression_statement "cVar12 = '\0';" (assignment_expression "cVar12 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;)) (goto_statement "goto LAB_002c56df;" goto statement_identifier ;) })) (expression_statement "plVar9 = (long *)plVar3[99];" (assignment_expression "plVar9 = (long *)plVar3[99]" identifier = (cast_expression "(long *)plVar3[99]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar3[99]" identifier [ number_literal ]))) ;) (expression_statement "plVar33 = plVar3 + 0x62;" (assignment_expression "plVar33 = plVar3 + 0x62" identifier = (binary_expression "plVar3 + 0x62" identifier + number_literal)) ;) (if_statement "if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;" if (parenthesized_expression "((long *)plVar3[99] == (long *)0x0)" ( (binary_expression "(long *)plVar3[99] == (long *)0x0" (cast_expression "(long *)plVar3[99]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar3[99]" identifier [ number_literal ])) == (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_002c56d8;" goto statement_identifier ;)) (do_statement "do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);" do (compound_statement "{\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    }" { (while_statement "while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }" while (parenthesized_expression "(plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7)" ( (comma_expression "plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7" (assignment_expression "plVar28 = plVar9" identifier = identifier) , (binary_expression "*(uint *)(plVar28 + 4) < uVar7" (pointer_expression "*(uint *)(plVar28 + 4)" * (cast_expression "(uint *)(plVar28 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar28 + 4)" ( (binary_expression "plVar28 + 4" identifier + number_literal) )))) < identifier)) )) (compound_statement "{\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }" { (expression_statement "plVar27 = plVar28 + 3;" (assignment_expression "plVar27 = plVar28 + 3" identifier = (binary_expression "plVar28 + 3" identifier + number_literal)) ;) (expression_statement "plVar9 = (long *)*plVar27;" (assignment_expression "plVar9 = (long *)*plVar27" identifier = (cast_expression "(long *)*plVar27" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar27" * identifier))) ;) (expression_statement "plVar28 = plVar33;" (assignment_expression "plVar28 = plVar33" identifier = identifier) ;) (if_statement "if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;" if (parenthesized_expression "((long *)*plVar27 == (long *)0x0)" ( (binary_expression "(long *)*plVar27 == (long *)0x0" (cast_expression "(long *)*plVar27" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (pointer_expression "*plVar27" * identifier)) == (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_002c66ba;" goto statement_identifier ;)) })) (expression_statement "plVar9 = (long *)plVar28[2];" (assignment_expression "plVar9 = (long *)plVar28[2]" identifier = (cast_expression "(long *)plVar28[2]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar28[2]" identifier [ number_literal ]))) ;) (expression_statement "plVar33 = plVar28;" (assignment_expression "plVar33 = plVar28" identifier = identifier) ;) }) while (parenthesized_expression "((long *)plVar28[2] != (long *)0x0)" ( (binary_expression "(long *)plVar28[2] != (long *)0x0" (cast_expression "(long *)plVar28[2]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "plVar28[2]" identifier [ number_literal ])) != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) (labeled_statement "LAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;" statement_identifier : (if_statement "if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;" if (parenthesized_expression "(((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0))" ( (binary_expression "((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)" (parenthesized_expression "((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4)))" ( (binary_expression "(plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))" (parenthesized_expression "(plVar3 + 0x62 == plVar28)" ( (binary_expression "plVar3 + 0x62 == plVar28" (binary_expression "plVar3 + 0x62" identifier + number_literal) == identifier) )) || (parenthesized_expression "(uVar7 < *(uint *)(plVar28 + 4))" ( (binary_expression "uVar7 < *(uint *)(plVar28 + 4)" identifier < (pointer_expression "*(uint *)(plVar28 + 4)" * (cast_expression "(uint *)(plVar28 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar28 + 4)" ( (binary_expression "plVar28 + 4" identifier + number_literal) ))))) ))) )) || (parenthesized_expression "(cVar12 = '\0', plVar28[5] == 0)" ( (comma_expression "cVar12 = '\0', plVar28[5] == 0" (assignment_expression "cVar12 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) , (binary_expression "plVar28[5] == 0" (subscript_expression "plVar28[5]" identifier [ number_literal ]) == number_literal)) ))) )) (goto_statement "goto LAB_002c56d8;" goto statement_identifier ;))) (labeled_statement "LAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;" statement_identifier : (expression_statement "local_98._0_1_ = (byte)uVar17;" (assignment_expression "local_98._0_1_ = (byte)uVar17" (field_expression "local_98._0_1_" identifier . field_identifier) = (cast_expression "(byte)uVar17" ( (type_descriptor "byte" type_identifier) ) identifier)) ;)) (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;) (expression_statement "iVar38 = *(int *)(param_2 + 0x30);" (assignment_expression "iVar38 = *(int *)(param_2 + 0x30)" identifier = (pointer_expression "*(int *)(param_2 + 0x30)" * (cast_expression "(int *)(param_2 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x30)" ( (binary_expression "param_2 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "cVar13 = FUN_00297400(plVar3,iVar38);" (assignment_expression "cVar13 = FUN_00297400(plVar3,iVar38)" identifier = (call_expression "FUN_00297400(plVar3,iVar38)" identifier (argument_list "(plVar3,iVar38)" ( identifier , identifier )))) ;) (if_statement "if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    \n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }" if (parenthesized_expression "((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e]))" ( (binary_expression "(cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])" (parenthesized_expression "(cVar13 == '\0')" ( (binary_expression "cVar13 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar38 != (int)plVar3[0x7e])" ( (binary_expression "iVar38 != (int)plVar3[0x7e]" identifier != (cast_expression "(int)plVar3[0x7e]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar3[0x7e]" identifier [ number_literal ]))) ))) )) (compound_statement "{\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    \n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }" { (if_statement "if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }" { (expression_statement "lVar30 = plVar3[99];" (assignment_expression "lVar30 = plVar3[99]" identifier = (subscript_expression "plVar3[99]" identifier [ number_literal ])) ;) (if_statement "if (lVar30 == 0) goto LAB_002c64ab;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c64ab;" goto statement_identifier ;)) (do_statement "do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );" do (compound_statement "{\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        }" { (if_statement "if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }" if (parenthesized_expression "(*(uint *)(lVar30 + 0x20) < uVar7)" ( (binary_expression "*(uint *)(lVar30 + 0x20) < uVar7" (pointer_expression "*(uint *)(lVar30 + 0x20)" * (cast_expression "(uint *)(lVar30 + 0x20)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }" { (expression_statement "lVar30 = *(long *)(lVar30 + 0x18);" (assignment_expression "lVar30 = *(long *)(lVar30 + 0x18)" identifier = (pointer_expression "*(long *)(lVar30 + 0x18)" * (cast_expression "(long *)(lVar30 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x18)" ( (binary_expression "lVar30 + 0x18" identifier + number_literal) ))))) ;) }) (else_clause "else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }" else (compound_statement "{\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }" { (expression_statement "lVar30 = *(long *)(lVar30 + 0x10);" (assignment_expression "lVar30 = *(long *)(lVar30 + 0x10)" identifier = (pointer_expression "*(long *)(lVar30 + 0x10)" * (cast_expression "(long *)(lVar30 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x10)" ( (binary_expression "lVar30 + 0x10" identifier + number_literal) ))))) ;) }))) (if_statement "if (lVar30 == 0) goto LAB_002c6490;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c6490;" goto statement_identifier ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (if_statement "if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }" if (parenthesized_expression "(*(char *)(param_8 + 9) != '\0')" ( (binary_expression "*(char *)(param_8 + 9) != '\0'" (pointer_expression "*(char *)(param_8 + 9)" * (cast_expression "(char *)(param_8 + 9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 9)" ( (binary_expression "param_8 + 9" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }" { (if_statement "if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;" if (parenthesized_expression "(*(int *)((long)param_8 + 0x4c) == -1)" ( (binary_expression "*(int *)((long)param_8 + 0x4c) == -1" (pointer_expression "*(int *)((long)param_8 + 0x4c)" * (cast_expression "(int *)((long)param_8 + 0x4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x4c)" ( (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_002c64ab;" goto statement_identifier ;)) (expression_statement "lVar30 = *(long *)(param_4 + 0x98);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x98)" identifier = (pointer_expression "*(long *)(param_4 + 0x98)" * (cast_expression "(long *)(param_4 + 0x98)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x98)" ( (binary_expression "param_4 + 0x98" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }" { (expression_statement "local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);" (assignment_expression "local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1)" identifier = (cast_expression "(bool)(*(byte *)(lVar30 + 0x20) & 1)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )))) ;) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }" if (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) != 0)" ( (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) != 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }" { (expression_statement "bVar49 = uVar47 == 100;" (assignment_expression "bVar49 = uVar47 == 100" identifier = (binary_expression "uVar47 == 100" identifier == number_literal)) ;) (expression_statement "local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);" (assignment_expression "local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8)" identifier = (binary_expression "*(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8)" (pointer_expression "*(int *)((long)param_8 + 0x4c)" * (cast_expression "(int *)((long)param_8 + 0x4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x4c)" ( (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) + (pointer_expression "*(int *)(lVar30 + 8)" * (cast_expression "(int *)(lVar30 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) )))))) ;) (expression_statement "bVar52 = 0;" (assignment_expression "bVar52 = 0" identifier = number_literal) ;) (expression_statement "bVar48 = bVar49;" (assignment_expression "bVar48 = bVar49" identifier = identifier) ;) (if_statement "if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;" if (parenthesized_expression "((uVar47 & 0xf7) != 0x85)" ( (binary_expression "(uVar47 & 0xf7) != 0x85" (parenthesized_expression "(uVar47 & 0xf7)" ( (binary_expression "uVar47 & 0xf7" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_002c64da;" goto statement_identifier ;)) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) (goto_statement "goto LAB_002c5150;" goto statement_identifier ;) })) (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_00290a30();" (call_expression "FUN_00290a30()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_002c82c4;" goto statement_identifier ;) })) (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2d5f,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;) })) (if_statement "if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }" { (labeled_statement "LAB_002c56df:\n      bVar48 = uVar47 == 100;" statement_identifier : (expression_statement "bVar48 = uVar47 == 100;" (assignment_expression "bVar48 = uVar47 == 100" identifier = (binary_expression "uVar47 == 100" identifier == number_literal)) ;)) (goto_statement "goto LAB_002c4e20;" goto statement_identifier ;) })) }) (else_clause "else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    \n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }" else (compound_statement "{\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    \n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }" { (expression_statement "bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;" (assignment_expression "bVar11 = *(byte *)((long)param_8 + 0x39) >> 2" identifier = (binary_expression "*(byte *)((long)param_8 + 0x39) >> 2" (pointer_expression "*(byte *)((long)param_8 + 0x39)" * (cast_expression "(byte *)((long)param_8 + 0x39)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x39)" ( (binary_expression "(long)param_8 + 0x39" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) >> number_literal)) ;) (expression_statement "bVar48 = (bVar11 & 0x3c) == 0x3c;" (assignment_expression "bVar48 = (bVar11 & 0x3c) == 0x3c" identifier = (binary_expression "(bVar11 & 0x3c) == 0x3c" (parenthesized_expression "(bVar11 & 0x3c)" ( (binary_expression "bVar11 & 0x3c" identifier & number_literal) )) == number_literal)) ;) (expression_statement "puVar44 = (uint *)(ulong)bVar48;" (assignment_expression "puVar44 = (uint *)(ulong)bVar48" identifier = (cast_expression "(uint *)(ulong)bVar48" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)bVar48" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "bVar49 = (bVar11 & 0x30) == 0x20;" (assignment_expression "bVar49 = (bVar11 & 0x30) == 0x20" identifier = (binary_expression "(bVar11 & 0x30) == 0x20" (parenthesized_expression "(bVar11 & 0x30)" ( (binary_expression "bVar11 & 0x30" identifier & number_literal) )) == number_literal)) ;) (expression_statement "uVar17 = (uint)bVar49;" (assignment_expression "uVar17 = (uint)bVar49" identifier = (cast_expression "(uint)bVar49" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_e1 = bVar49 || bVar48;" (assignment_expression "local_e1 = bVar49 || bVar48" identifier = (binary_expression "bVar49 || bVar48" identifier || identifier)) ;) (if_statement "if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }" if (parenthesized_expression "((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0))" ( (binary_expression "(bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)" (parenthesized_expression "(bVar49 || bVar48)" ( (binary_expression "bVar49 || bVar48" identifier || identifier) )) && (parenthesized_expression "(iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)" ( (comma_expression "iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,0)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,0)" identifier (argument_list "(param_9,plVar3,0)" ( identifier , identifier , number_literal )))) , (binary_expression "iVar38 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }" { (expression_statement "local_68 = FUN_001d7270(param_9,plVar3,0);" (assignment_expression "local_68 = FUN_001d7270(param_9,plVar3,0)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,0)" identifier (argument_list "(param_9,plVar3,0)" ( identifier , identifier , number_literal )))) ;) (expression_statement "local_68 = local_68 | 1;" (assignment_expression "local_68 = local_68 | 1" identifier = (binary_expression "local_68 | 1" identifier | number_literal)) ;) (expression_statement "param_9 = (uint *)&local_78;" (assignment_expression "param_9 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;) }) (else_clause "else {\n      local_e1 = false;\n    }" else (compound_statement "{\n      local_e1 = false;\n    }" { (expression_statement "local_e1 = false;" (assignment_expression "local_e1 = false" identifier = false) ;) }))) (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;) (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) (if_statement "if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }" if (parenthesized_expression "(uVar47 - 1 < 0xf9)" ( (binary_expression "uVar47 - 1 < 0xf9" (binary_expression "uVar47 - 1" identifier - number_literal) < number_literal) )) (compound_statement "{\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }" { (expression_statement "iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];" (assignment_expression "iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1]" identifier = (cast_expression "(int)(char)(&DAT_0055e3e0)[uVar47 - 1]" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)(&DAT_0055e3e0)[uVar47 - 1]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "(&DAT_0055e3e0)[uVar47 - 1]" (parenthesized_expression "(&DAT_0055e3e0)" ( (pointer_expression "&DAT_0055e3e0" & identifier) )) [ (binary_expression "uVar47 - 1" identifier - number_literal) ])))) ;) })) (expression_statement "cVar12 = FUN_00228fa0(param_8,iVar38);" (assignment_expression "cVar12 = FUN_00228fa0(param_8,iVar38)" identifier = (call_expression "FUN_00228fa0(param_8,iVar38)" identifier (argument_list "(param_8,iVar38)" ( identifier , identifier )))) ;) (if_statement "if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }" if (parenthesized_expression "(cVar12 == '\0')" ( (binary_expression "cVar12 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }" { (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "bVar50 = *(char *)((long)param_8 + 0x65) == '\0';" (assignment_expression "bVar50 = *(char *)((long)param_8 + 0x65) == '\0'" identifier = (binary_expression "*(char *)((long)param_8 + 0x65) == '\0'" (pointer_expression "*(char *)((long)param_8 + 0x65)" * (cast_expression "(char *)((long)param_8 + 0x65)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x65)" ( (binary_expression "(long)param_8 + 0x65" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence '))) ;) (if_statement "if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }" if (parenthesized_expression "(!bVar50)" ( (unary_expression "!bVar50" ! identifier) )) (compound_statement "{\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }" { (labeled_statement "LAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0xb8);" (assignment_expression "lVar30 = *(long *)(param_4 + 0xb8)" identifier = (pointer_expression "*(long *)(param_4 + 0xb8)" * (cast_expression "(long *)(param_4 + 0xb8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0xb8)" ( (binary_expression "param_4 + 0xb8" identifier + number_literal) ))))) ;)) (if_statement "if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }" { (expression_statement "FUN_00290a10();" (call_expression "FUN_00290a10()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_002c81eb:\n          FUN_00290a50();" statement_identifier : (expression_statement "FUN_00290a50();" (call_expression "FUN_00290a50()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c81f0:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");" statement_identifier : (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2e88,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;)) })) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }" if (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) == 0)" ( (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) == 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                    \n          FUN_00291e90();\n        }" { (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));" (assignment_expression "bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8))" identifier = (call_expression "CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8))" identifier (argument_list "(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8))" ( (pointer_expression "*(uint *)((long)param_8 + 0x54)" * (cast_expression "(uint *)((long)param_8 + 0x54)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x54)" ( (binary_expression "(long)param_8 + 0x54" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) , (pointer_expression "*(uint *)(lVar30 + 8)" * (cast_expression "(uint *)(lVar30 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) )))) )))) ;) (expression_statement "uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);" (assignment_expression "uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8)" identifier = (binary_expression "*(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8)" (pointer_expression "*(uint *)((long)param_8 + 0x54)" * (cast_expression "(uint *)((long)param_8 + 0x54)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x54)" ( (binary_expression "(long)param_8 + 0x54" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) + (pointer_expression "*(uint *)(lVar30 + 8)" * (cast_expression "(uint *)(lVar30 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) )))))) ;) (expression_statement "bVar50 = uVar16 == 0;" (assignment_expression "bVar50 = uVar16 == 0" identifier = (binary_expression "uVar16 == 0" identifier == number_literal)) ;) (goto_statement "goto LAB_002c4c88;" goto statement_identifier ;) })) }) (else_clause "else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }" else (compound_statement "{\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }" { (if_statement "if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;" if (parenthesized_expression "(*(char *)((long)param_8 + 0x65) != '\0')" ( (binary_expression "*(char *)((long)param_8 + 0x65) != '\0'" (pointer_expression "*(char *)((long)param_8 + 0x65)" * (cast_expression "(char *)((long)param_8 + 0x65)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x65)" ( (binary_expression "(long)param_8 + 0x65" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c4c60;" goto statement_identifier ;)) (expression_statement "lVar30 = *(long *)(param_4 + 0x30);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x30)" identifier = (pointer_expression "*(long *)(param_4 + 0x30)" * (cast_expression "(long *)(param_4 + 0x30)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x30)" ( (binary_expression "param_4 + 0x30" identifier + number_literal) ))))) ;) (if_statement "if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }" if (parenthesized_expression "(*(int *)(param_8 + 0xd) == -1)" ( (binary_expression "*(int *)(param_8 + 0xd) == -1" (pointer_expression "*(int *)(param_8 + 0xd)" * (cast_expression "(int *)(param_8 + 0xd)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 0xd)" ( (binary_expression "param_8 + 0xd" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }" { (if_statement "if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }" { (labeled_statement "LAB_002c8217:\n          FUN_00290a50();" statement_identifier : (expression_statement "FUN_00290a50();" (call_expression "FUN_00290a50()" identifier (argument_list "()" ( ))) ;)) (goto_statement "goto LAB_002c821c;" goto statement_identifier ;) })) (if_statement "if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }" if (parenthesized_expression "(*(int *)((long)param_8 + 0x6c) == -1)" ( (binary_expression "*(int *)((long)param_8 + 0x6c) == -1" (pointer_expression "*(int *)((long)param_8 + 0x6c)" * (cast_expression "(int *)((long)param_8 + 0x6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x6c)" ( (binary_expression "(long)param_8 + 0x6c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }" { (expression_statement "FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address")" identifier (argument_list "("../../gold/mips.cc",0x9ed,"comp_entry_address")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""comp_entry_address"" " string_content ") ))) ;) })) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }" if (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) == 0)" ( (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) == 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                    \n          FUN_00291e90();\n        }" { (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "bVar11 = *(byte *)(param_4 + 0x14);" (assignment_expression "bVar11 = *(byte *)(param_4 + 0x14)" identifier = (pointer_expression "*(byte *)(param_4 + 0x14)" * (cast_expression "(byte *)(param_4 + 0x14)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x14)" ( (binary_expression "param_4 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);" (assignment_expression "uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8)" identifier = (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1" (pointer_expression "*(int *)((long)param_8 + 0x6c)" * (cast_expression "(int *)((long)param_8 + 0x6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x6c)" ( (binary_expression "(long)param_8 + 0x6c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) + number_literal) + (pointer_expression "*(int *)(lVar30 + 0x68)" * (cast_expression "(int *)(lVar30 + 0x68)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x68)" ( (binary_expression "lVar30 + 0x68" identifier + number_literal) ))))) + (pointer_expression "*(int *)(lVar30 + 0x60)" * (cast_expression "(int *)(lVar30 + 0x60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x60)" ( (binary_expression "lVar30 + 0x60" identifier + number_literal) ))))) + (pointer_expression "*(int *)(lVar30 + 8)" * (cast_expression "(int *)(lVar30 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) )))))) ;) (if_statement "if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }" if (parenthesized_expression "(bVar11 == 0)" ( (binary_expression "bVar11 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }" { (expression_statement "FUN_00290d80();" (call_expression "FUN_00290d80()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_002c832e:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8333:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8338:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c833d:\n          FUN_00290a50();" statement_identifier : (expression_statement "FUN_00290a50();" (call_expression "FUN_00290a50()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8342:\n          FUN_00290e30();" statement_identifier : (expression_statement "FUN_00290e30();" (call_expression "FUN_00290e30()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");" statement_identifier : (expression_statement "FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset")" identifier (argument_list "("../../gold/mips.cc",0x895,"get_primary_got_offset")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""get_primary_got_offset"" " string_content ") ))) ;)) })) (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;" (assignment_expression "bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0" identifier = (binary_expression "(*(uint *)(param_4 + 0x10) & 0x2000000) == 0" (parenthesized_expression "(*(uint *)(param_4 + 0x10) & 0x2000000)" ( (binary_expression "*(uint *)(param_4 + 0x10) & 0x2000000" (pointer_expression "*(uint *)(param_4 + 0x10)" * (cast_expression "(uint *)(param_4 + 0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x10)" ( (binary_expression "param_4 + 0x10" identifier + number_literal) )))) & number_literal) )) == number_literal)) ;) (if_statement "if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }" if (parenthesized_expression "(bVar50)" ( identifier )) (compound_statement "{\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }" { (expression_statement "puVar44 = (uint *)(ulong)bVar11;" (assignment_expression "puVar44 = (uint *)(ulong)bVar11" identifier = (cast_expression "(uint *)(ulong)bVar11" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)bVar11" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "bVar11 = bVar49;" (assignment_expression "bVar11 = bVar49" identifier = identifier) ;) })) (expression_statement "uVar17 = (uint)bVar11;" (assignment_expression "uVar17 = (uint)bVar11" identifier = (cast_expression "(uint)bVar11" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) }) (else_clause "else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }" else (compound_statement "{\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }" { (if_statement "if (lVar30 == 0) goto LAB_002c81eb;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c81eb;" goto statement_identifier ;)) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }" if (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) == 0)" ( (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) == 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                    \n          FUN_00291e90();\n        }" { (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);" (assignment_expression "uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8)" identifier = (binary_expression "*(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8)" (pointer_expression "*(int *)(param_8 + 0xd)" * (cast_expression "(int *)(param_8 + 0xd)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 0xd)" ( (binary_expression "param_8 + 0xd" identifier + number_literal) )))) + (pointer_expression "*(int *)(lVar30 + 8)" * (cast_expression "(int *)(lVar30 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) )))))) ;) (expression_statement "puVar44 = (uint *)0x0;" (assignment_expression "puVar44 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));" (assignment_expression "bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68))" identifier = (call_expression "CARRY4(uVar16,*(uint *)(lVar30 + 0x68))" identifier (argument_list "(uVar16,*(uint *)(lVar30 + 0x68))" ( identifier , (pointer_expression "*(uint *)(lVar30 + 0x68)" * (cast_expression "(uint *)(lVar30 + 0x68)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x68)" ( (binary_expression "lVar30 + 0x68" identifier + number_literal) )))) )))) ;) (expression_statement "uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);" (assignment_expression "uVar16 = uVar16 + *(uint *)(lVar30 + 0x68)" identifier = (binary_expression "uVar16 + *(uint *)(lVar30 + 0x68)" identifier + (pointer_expression "*(uint *)(lVar30 + 0x68)" * (cast_expression "(uint *)(lVar30 + 0x68)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x68)" ( (binary_expression "lVar30 + 0x68" identifier + number_literal) )))))) ;) (expression_statement "bVar50 = uVar16 == 0;" (assignment_expression "bVar50 = uVar16 == 0" identifier = (binary_expression "uVar16 == 0" identifier == number_literal)) ;) (expression_statement "uVar17 = 0;" (assignment_expression "uVar17 = 0" identifier = number_literal) ;) }))) (labeled_statement "LAB_002c4c88:\n      local_68 = uVar16;" statement_identifier : (expression_statement "local_68 = uVar16;" (assignment_expression "local_68 = uVar16" identifier = identifier) ;)) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) }))) (expression_statement "lVar30 = 9;" (assignment_expression "lVar30 = 9" identifier = number_literal) ;) (expression_statement "pbVar39 = (byte *)*param_8;" (assignment_expression "pbVar39 = (byte *)*param_8" identifier = (cast_expression "(byte *)*param_8" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_8" * identifier))) ;) (expression_statement "pbVar41 = (byte *)"_gp_disp";" (assignment_expression "pbVar41 = (byte *)"_gp_disp"" identifier = (cast_expression "(byte *)"_gp_disp"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""_gp_disp"" " string_content "))) ;) (do_statement "do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);" do (compound_statement "{\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    }" { (if_statement "if (lVar30 == 0) break;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar30 = lVar30 + -1;" (assignment_expression "lVar30 = lVar30 + -1" identifier = (binary_expression "lVar30 + -1" identifier + number_literal)) ;) (expression_statement "bVar48 = *pbVar39 < *pbVar41;" (assignment_expression "bVar48 = *pbVar39 < *pbVar41" identifier = (binary_expression "*pbVar39 < *pbVar41" (pointer_expression "*pbVar39" * identifier) < (pointer_expression "*pbVar41" * identifier))) ;) (expression_statement "bVar50 = *pbVar39 == *pbVar41;" (assignment_expression "bVar50 = *pbVar39 == *pbVar41" identifier = (binary_expression "*pbVar39 == *pbVar41" (pointer_expression "*pbVar39" * identifier) == (pointer_expression "*pbVar41" * identifier))) ;) (expression_statement "pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;" (assignment_expression "pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1" identifier = (binary_expression "pbVar39 + (ulong)bVar52 * -2 + 1" (binary_expression "pbVar39 + (ulong)bVar52 * -2" identifier + (binary_expression "(ulong)bVar52 * -2" (cast_expression "(ulong)bVar52" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;" (assignment_expression "pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1" identifier = (binary_expression "pbVar41 + (ulong)bVar52 * -2 + 1" (binary_expression "pbVar41 + (ulong)bVar52 * -2" identifier + (binary_expression "(ulong)bVar52 * -2" (cast_expression "(ulong)bVar52" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar50)" ( identifier )) ;) (expression_statement "lVar30 = 0xf;" (assignment_expression "lVar30 = 0xf" identifier = number_literal) ;) (expression_statement "bVar49 = !bVar48 && !bVar50;" (assignment_expression "bVar49 = !bVar48 && !bVar50" identifier = (binary_expression "!bVar48 && !bVar50" (unary_expression "!bVar48" ! identifier) && (unary_expression "!bVar50" ! identifier))) ;) (expression_statement "bVar50 = bVar49 < bVar48;" (assignment_expression "bVar50 = bVar49 < bVar48" identifier = (binary_expression "bVar49 < bVar48" identifier < identifier)) ;) (expression_statement "bVar51 = bVar49 == bVar48;" (assignment_expression "bVar51 = bVar49 == bVar48" identifier = (binary_expression "bVar49 == bVar48" identifier == identifier)) ;) (expression_statement "pbVar39 = (byte *)*param_8;" (assignment_expression "pbVar39 = (byte *)*param_8" identifier = (cast_expression "(byte *)*param_8" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_8" * identifier))) ;) (expression_statement "pbVar41 = (byte *)"__gnu_local_gp";" (assignment_expression "pbVar41 = (byte *)"__gnu_local_gp"" identifier = (cast_expression "(byte *)"__gnu_local_gp"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""__gnu_local_gp"" " string_content "))) ;) (do_statement "do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);" do (compound_statement "{\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    }" { (if_statement "if (lVar30 == 0) break;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "lVar30 = lVar30 + -1;" (assignment_expression "lVar30 = lVar30 + -1" identifier = (binary_expression "lVar30 + -1" identifier + number_literal)) ;) (expression_statement "bVar50 = *pbVar39 < *pbVar41;" (assignment_expression "bVar50 = *pbVar39 < *pbVar41" identifier = (binary_expression "*pbVar39 < *pbVar41" (pointer_expression "*pbVar39" * identifier) < (pointer_expression "*pbVar41" * identifier))) ;) (expression_statement "bVar51 = *pbVar39 == *pbVar41;" (assignment_expression "bVar51 = *pbVar39 == *pbVar41" identifier = (binary_expression "*pbVar39 == *pbVar41" (pointer_expression "*pbVar39" * identifier) == (pointer_expression "*pbVar41" * identifier))) ;) (expression_statement "pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;" (assignment_expression "pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1" identifier = (binary_expression "pbVar39 + (ulong)bVar52 * -2 + 1" (binary_expression "pbVar39 + (ulong)bVar52 * -2" identifier + (binary_expression "(ulong)bVar52 * -2" (cast_expression "(ulong)bVar52" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;" (assignment_expression "pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1" identifier = (binary_expression "pbVar41 + (ulong)bVar52 * -2 + 1" (binary_expression "pbVar41 + (ulong)bVar52 * -2" identifier + (binary_expression "(ulong)bVar52 * -2" (cast_expression "(ulong)bVar52" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar51)" ( identifier )) ;) (if_statement "if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }" if (parenthesized_expression "(bVar49 == bVar48)" ( (binary_expression "bVar49 == bVar48" identifier == identifier) )) (compound_statement "{\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }" { (expression_statement "bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;" (assignment_expression "bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1" identifier = (binary_expression "*(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1" (binary_expression "*(byte *)((long)plVar3 + 0x36c) >> 1 & 1" (binary_expression "*(byte *)((long)plVar3 + 0x36c) >> 1" (pointer_expression "*(byte *)((long)plVar3 + 0x36c)" * (cast_expression "(byte *)((long)plVar3 + 0x36c)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)plVar3 + 0x36c)" ( (binary_expression "(long)plVar3 + 0x36c" (cast_expression "(long)plVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) >> number_literal) & number_literal) ^ number_literal)) ;) (if_statement "if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;" if (parenthesized_expression "((!bVar50 && !bVar51) == bVar50)" ( (binary_expression "(!bVar50 && !bVar51) == bVar50" (parenthesized_expression "(!bVar50 && !bVar51)" ( (binary_expression "!bVar50 && !bVar51" (unary_expression "!bVar50" ! identifier) && (unary_expression "!bVar51" ! identifier)) )) == identifier) )) (compound_statement "{\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }" { (if_statement "if (bVar52 == 0) goto LAB_002c51e0;" if (parenthesized_expression "(bVar52 == 0)" ( (binary_expression "bVar52 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c51e0;" goto statement_identifier ;)) }) (else_clause "else if (bVar52 == 0) goto LAB_002c5078;" else (if_statement "if (bVar52 == 0) goto LAB_002c5078;" if (parenthesized_expression "(bVar52 == 0)" ( (binary_expression "bVar52 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c5078;" goto statement_identifier ;)))) (if_statement "if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }" if (parenthesized_expression "(((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))" ( (binary_expression "((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40)))" (parenthesized_expression "((1 < uVar47 - 0x68) && (1 < uVar47 - 5))" ( (binary_expression "(1 < uVar47 - 0x68) && (1 < uVar47 - 5)" (parenthesized_expression "(1 < uVar47 - 0x68)" ( (binary_expression "1 < uVar47 - 0x68" number_literal < (binary_expression "uVar47 - 0x68" identifier - number_literal)) )) && (parenthesized_expression "(1 < uVar47 - 5)" ( (binary_expression "1 < uVar47 - 5" number_literal < (binary_expression "uVar47 - 5" identifier - number_literal)) ))) )) && (parenthesized_expression "((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40)))" ( (parenthesized_expression "(1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))" ( (binary_expression "1 < uVar47 - 0x86 && (1 < uVar47 - 0x40)" (binary_expression "1 < uVar47 - 0x86" number_literal < (binary_expression "uVar47 - 0x86" identifier - number_literal)) && (parenthesized_expression "(1 < uVar47 - 0x40)" ( (binary_expression "1 < uVar47 - 0x40" number_literal < (binary_expression "uVar47 - 0x40" identifier - number_literal)) ))) )) ))) )) (compound_statement "{\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }" { (expression_statement "uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );" (assignment_expression "uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        )" identifier = (call_expression "gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        )" identifier (argument_list "(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        )" ( (string_literal ""relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."" " string_content ") )))) ;) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21)" identifier (argument_list "(param_2,param_6,uVar35,uVar21)" ( identifier , identifier , identifier , identifier ))) ;) })) (expression_statement "cVar12 = '\x01';" (assignment_expression "cVar12 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }) (else_clause "else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }" else (compound_statement "{\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }" { (if_statement "if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }" if (parenthesized_expression "((!bVar50 && !bVar51) == bVar50)" ( (binary_expression "(!bVar50 && !bVar51) == bVar50" (parenthesized_expression "(!bVar50 && !bVar51)" ( (binary_expression "!bVar50 && !bVar51" (unary_expression "!bVar50" ! identifier) && (unary_expression "!bVar51" ! identifier)) )) == identifier) )) (compound_statement "{\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }" { (labeled_statement "LAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" statement_identifier : (if_statement "if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" if (parenthesized_expression "(*(long *)(param_4 + 0x28) == 0)" ( (binary_expression "*(long *)(param_4 + 0x28) == 0" (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          local_68 = 0;\n        }" { (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" identifier = number_literal) ;) }) (else_clause "else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" else (compound_statement "{\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" { (expression_statement "local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);" (assignment_expression "local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40)" identifier = (pointer_expression "*(uint *)(*(long *)(param_4 + 0x28) + 0x40)" * (cast_expression "(uint *)(*(long *)(param_4 + 0x28) + 0x40)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x28) + 0x40)" ( (binary_expression "*(long *)(param_4 + 0x28) + 0x40" (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) )))) + number_literal) ))))) ;) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" if (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" ( (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" ( (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" ( (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" * (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" ( (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(plVar3[0x6e] != 0)" ( (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" { (expression_statement "local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c)" identifier = (binary_expression "local_68 + *(int *)(plVar3[0x6e] + 0x10c)" identifier + (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" * (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x6e] + 0x10c)" ( (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) + number_literal) )))))) ;) })) })))) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) })) (labeled_statement "LAB_002c5078:\n      cVar12 = '\0';" statement_identifier : (expression_statement "cVar12 = '\0';" (assignment_expression "cVar12 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;)) }))) (if_statement "if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }" if (parenthesized_expression "(uVar47 == 100)" ( (binary_expression "uVar47 == 100" identifier == number_literal) )) (compound_statement "{\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }" { (expression_statement "lVar24 = param_8[0xf];" (assignment_expression "lVar24 = param_8[0xf]" identifier = (subscript_expression "param_8[0xf]" identifier [ number_literal ])) ;) (if_statement "if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }" if (parenthesized_expression "(lVar24 == 0)" ( (binary_expression "lVar24 == 0" identifier == number_literal) )) (compound_statement "{\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }" { (if_statement "if (param_8[0x10] == 0) goto LAB_002c4d83;" if (parenthesized_expression "(param_8[0x10] == 0)" ( (binary_expression "param_8[0x10] == 0" (subscript_expression "param_8[0x10]" identifier [ number_literal ]) == number_literal) )) (goto_statement "goto LAB_002c4d83;" goto statement_identifier ;)) (if_statement "if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;" if (parenthesized_expression "(*(int *)((long)param_8 + 0x24) == -1)" ( (binary_expression "*(int *)((long)param_8 + 0x24) == -1" (pointer_expression "*(int *)((long)param_8 + 0x24)" * (cast_expression "(int *)((long)param_8 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x24)" ( (binary_expression "(long)param_8 + 0x24" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_002c82c9;" goto statement_identifier ;)) (goto_statement "goto LAB_002c5869;" goto statement_identifier ;) })) (if_statement "if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;" if (parenthesized_expression "((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0'))" ( (binary_expression "(*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')" (parenthesized_expression "(*(int *)((long)param_8 + 0x24) == -1)" ( (binary_expression "*(int *)((long)param_8 + 0x24) == -1" (pointer_expression "*(int *)((long)param_8 + 0x24)" * (cast_expression "(int *)((long)param_8 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x24)" ( (binary_expression "(long)param_8 + 0x24" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) && (parenthesized_expression "((char)puVar44 != '\0')" ( (binary_expression "(char)puVar44 != '\0'" (cast_expression "(char)puVar44" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_002c4d83;" goto statement_identifier ;)) (expression_statement "lVar30 = lVar24;" (assignment_expression "lVar30 = lVar24" identifier = identifier) ;) (if_statement "if (param_8[0x10] == 0) goto LAB_002c5870;" if (parenthesized_expression "(param_8[0x10] == 0)" ( (binary_expression "param_8[0x10] == 0" (subscript_expression "param_8[0x10]" identifier [ number_literal ]) == number_literal) )) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;)) (if_statement "if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;" if (parenthesized_expression "(*(uint *)(plVar3 + 7) < 2)" ( (binary_expression "*(uint *)(plVar3 + 7) < 2" (pointer_expression "*(uint *)(plVar3 + 7)" * (cast_expression "(uint *)(plVar3 + 7)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 7)" ( (binary_expression "plVar3 + 7" identifier + number_literal) )))) < number_literal) )) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;)) (expression_statement "uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);" (assignment_expression "uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a)" identifier = (binary_expression "((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a)" (parenthesized_expression "((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8)" ( (binary_expression "(ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8" (binary_expression "(ulong)*(uint *)(plVar3 + 0x7c)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(plVar3 + 0x7c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 0x7c)" ( (binary_expression "plVar3 + 0x7c" identifier + number_literal) )))) + (binary_expression "(plVar3[0x7b] - plVar3[0x79]) * 8" (parenthesized_expression "(plVar3[0x7b] - plVar3[0x79])" ( (binary_expression "plVar3[0x7b] - plVar3[0x79]" (subscript_expression "plVar3[0x7b]" identifier [ number_literal ]) - (subscript_expression "plVar3[0x79]" identifier [ number_literal ])) )) * number_literal)) )) - (binary_expression "(ulong)*(uint *)(plVar3 + 0x7a)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(plVar3 + 0x7a)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 0x7a)" ( (binary_expression "plVar3 + 0x7a" identifier + number_literal) )))))) ;) (if_statement "if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }" if (parenthesized_expression "(1 < uVar34)" ( (binary_expression "1 < uVar34" number_literal < identifier) )) (compound_statement "{\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }" { (expression_statement "uVar23 = 1;" (assignment_expression "uVar23 = 1" identifier = number_literal) ;) (do_statement "do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);" do (compound_statement "{\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        }" { (expression_statement "lVar30 = param_8[0x10];" (assignment_expression "lVar30 = param_8[0x10]" identifier = (subscript_expression "param_8[0x10]" identifier [ number_literal ])) ;) (if_statement "if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;" if (parenthesized_expression "((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)" ( (binary_expression "(*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0" (parenthesized_expression "(*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f))" ( (binary_expression "*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)" (pointer_expression "*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8)" * (cast_expression "(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x79] + (uVar23 >> 6) * 8)" ( (binary_expression "plVar3[0x79] + (uVar23 >> 6) * 8" (subscript_expression "plVar3[0x79]" identifier [ number_literal ]) + (binary_expression "(uVar23 >> 6) * 8" (parenthesized_expression "(uVar23 >> 6)" ( (binary_expression "uVar23 >> 6" identifier >> number_literal) )) * number_literal)) )))) & (binary_expression "1L << ((byte)uVar23 & 0x3f)" number_literal << (parenthesized_expression "((byte)uVar23 & 0x3f)" ( (binary_expression "(byte)uVar23 & 0x3f" (cast_expression "(byte)uVar23" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) )) != number_literal) )) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;)) (expression_statement "lVar30 = lVar24;" (assignment_expression "lVar30 = lVar24" identifier = identifier) ;) (if_statement "if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;" if (parenthesized_expression "(uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1)" ( (binary_expression "uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1" identifier == (binary_expression "(ulong)(*(uint *)(plVar3 + 7) - 2) + 1" (call_expression "(ulong)(*(uint *)(plVar3 + 7) - 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(*(uint *)(plVar3 + 7) - 2)" ( (binary_expression "*(uint *)(plVar3 + 7) - 2" (pointer_expression "*(uint *)(plVar3 + 7)" * (cast_expression "(uint *)(plVar3 + 7)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3 + 7)" ( (binary_expression "plVar3 + 7" identifier + number_literal) )))) - number_literal) ))) + number_literal)) )) (goto_statement "goto LAB_002c5870;" goto statement_identifier ;)) (expression_statement "uVar23 = uVar23 + 1;" (assignment_expression "uVar23 = uVar23 + 1" identifier = (binary_expression "uVar23 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar23 != uVar34)" ( (binary_expression "uVar23 != uVar34" identifier != identifier) )) ;) })) (labeled_statement "LAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");" statement_identifier : (expression_statement "FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section")" identifier (argument_list "("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""is_mips16_call_fp_stub_section"" " string_content ") ))) ;)) })) (if_statement "if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }" if (parenthesized_expression "(param_8[0xe] != 0)" ( (binary_expression "param_8[0xe] != 0" (subscript_expression "param_8[0xe]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }" { (if_statement "if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }" if (parenthesized_expression "((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0'))" ( (binary_expression "(uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')" (parenthesized_expression "(uVar47 == 0x67)" ( (binary_expression "uVar47 == 0x67" identifier == number_literal) )) && (parenthesized_expression "(*(char *)(param_8 + 9) == '\0')" ( (binary_expression "*(char *)(param_8 + 9) == '\0'" (pointer_expression "*(char *)(param_8 + 9)" * (cast_expression "(char *)(param_8 + 9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 9)" ( (binary_expression "param_8 + 9" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }" { (if_statement "if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }" if (parenthesized_expression "(*(int *)((long)param_8 + 0x4c) == -1)" ( (binary_expression "*(int *)((long)param_8 + 0x4c) == -1" (pointer_expression "*(int *)((long)param_8 + 0x4c)" * (cast_expression "(int *)((long)param_8 + 0x4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x4c)" ( (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }" { (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (goto_statement "goto LAB_002c4e31;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c5256;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c509e;" goto statement_identifier ;) })) }))) (if_statement "if (*(int *)((long)param_8 + 0x4c) == -1) {\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }" if (parenthesized_expression "(*(int *)((long)param_8 + 0x4c) == -1)" ( (binary_expression "*(int *)((long)param_8 + 0x4c) == -1" (pointer_expression "*(int *)((long)param_8 + 0x4c)" * (cast_expression "(int *)((long)param_8 + 0x4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x4c)" ( (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == number_literal) )) (compound_statement "{\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }" { (labeled_statement "LAB_002c52f0:\n    bVar48 = uVar47 == 100;" statement_identifier : (expression_statement "bVar48 = uVar47 == 100;" (assignment_expression "bVar48 = uVar47 == 100" identifier = (binary_expression "uVar47 == 100" identifier == number_literal)) ;)) (if_statement "if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;" if (parenthesized_expression "(uVar47 == 0x85 || bVar48)" ( (binary_expression "uVar47 == 0x85 || bVar48" (binary_expression "uVar47 == 0x85" identifier == number_literal) || identifier) )) (goto_statement "goto LAB_002c4d98;" goto statement_identifier ;)) (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "bVar49 = false;" (assignment_expression "bVar49 = false" identifier = false) ;) (if_statement "if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;" if (parenthesized_expression "((uVar36 & 0xf7) != 0x85)" ( (binary_expression "(uVar36 & 0xf7) != 0x85" (parenthesized_expression "(uVar36 & 0xf7)" ( (binary_expression "uVar36 & 0xf7" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_002c4e43;" goto statement_identifier ;)) (goto_statement "goto LAB_002c5320;" goto statement_identifier ;) })) (labeled_statement "LAB_002c5256:\n  local_d0 = (uint *)&local_78;" statement_identifier : (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;)) (expression_statement "uVar36 = (uint)uVar34;" (assignment_expression "uVar36 = (uint)uVar34" identifier = (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')) {\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }" if (parenthesized_expression "(((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0'))" ( (binary_expression "((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')" (parenthesized_expression "((*(byte *)((long)plVar3 + 0x36c) & 1) == 0)" ( (binary_expression "(*(byte *)((long)plVar3 + 0x36c) & 1) == 0" (parenthesized_expression "(*(byte *)((long)plVar3 + 0x36c) & 1)" ( (binary_expression "*(byte *)((long)plVar3 + 0x36c) & 1" (pointer_expression "*(byte *)((long)plVar3 + 0x36c)" * (cast_expression "(byte *)((long)plVar3 + 0x36c)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)plVar3 + 0x36c)" ( (binary_expression "(long)plVar3 + 0x36c" (cast_expression "(long)plVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) )) == number_literal) )) && (parenthesized_expression "(cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')" ( (comma_expression "cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0'" (assignment_expression "cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff)" identifier = (call_expression "FUN_00290610(uVar47,(ulong)puVar44 & 0xff)" identifier (argument_list "(uVar47,(ulong)puVar44 & 0xff)" ( identifier , (binary_expression "(ulong)puVar44 & 0xff" (cast_expression "(ulong)puVar44" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) )))) , (binary_expression "cVar13 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) ))) )) (compound_statement "{\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }" { (expression_statement "lVar30 = *(long *)(param_4 + 0x98);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x98)" identifier = (pointer_expression "*(long *)(param_4 + 0x98)" * (cast_expression "(long *)(param_4 + 0x98)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x98)" ( (binary_expression "param_4 + 0x98" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }" { (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }" if (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) == 0)" ( (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) == 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                    \n        FUN_00291e90();\n      }" { (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "local_98._0_1_ = (byte)uVar17;" (assignment_expression "local_98._0_1_ = (byte)uVar17" (field_expression "local_98._0_1_" identifier . field_identifier) = (cast_expression "(byte)uVar17" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (expression_statement "bVar48 = uVar47 == 100;" (assignment_expression "bVar48 = uVar47 == 100" identifier = (binary_expression "uVar47 == 100" identifier == number_literal)) ;) (expression_statement "local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);" (assignment_expression "local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20)" identifier = (binary_expression "extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20)" (binary_expression "extraout_EDX + *(int *)(lVar30 + 8)" identifier + (pointer_expression "*(int *)(lVar30 + 8)" * (cast_expression "(int *)(lVar30 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) ))))) + (call_expression "(uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20)" ( (binary_expression "(*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20" (parenthesized_expression "(*(byte *)((long)param_8 + 0x39) >> 2 & 0x30)" ( (binary_expression "*(byte *)((long)param_8 + 0x39) >> 2 & 0x30" (binary_expression "*(byte *)((long)param_8 + 0x39) >> 2" (pointer_expression "*(byte *)((long)param_8 + 0x39)" * (cast_expression "(byte *)((long)param_8 + 0x39)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x39)" ( (binary_expression "(long)param_8 + 0x39" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) >> number_literal) & number_literal) )) == number_literal) ))))) ;) (expression_statement "bVar49 = (bool)((byte)local_98 & bVar48);" (assignment_expression "bVar49 = (bool)((byte)local_98 & bVar48)" identifier = (cast_expression "(bool)((byte)local_98 & bVar48)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "((byte)local_98 & bVar48)" ( (binary_expression "(byte)local_98 & bVar48" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) & identifier) )))) ;) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) (labeled_statement "joined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }" statement_identifier : (if_statement "if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }" if (parenthesized_expression "(bVar49 != false)" ( (binary_expression "bVar49 != false" identifier != false) )) (compound_statement "{\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }" { (expression_statement "uVar17 = (uint)bVar49;" (assignment_expression "uVar17 = (uint)bVar49" identifier = (cast_expression "(uint)bVar49" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (goto_statement "goto LAB_002c532c;" goto statement_identifier ;) }))) (labeled_statement "LAB_002c4e31:\n      bVar49 = bVar48;" statement_identifier : (expression_statement "bVar49 = bVar48;" (assignment_expression "bVar49 = bVar48" identifier = identifier) ;)) (if_statement "if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;" if (parenthesized_expression "((uVar36 & 0xf7) == 0x85)" ( (binary_expression "(uVar36 & 0xf7) == 0x85" (parenthesized_expression "(uVar36 & 0xf7)" ( (binary_expression "uVar36 & 0xf7" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_002c5320;" goto statement_identifier ;)) (labeled_statement "LAB_002c4e43:\n      bVar49 = bVar48;" statement_identifier : (expression_statement "bVar49 = bVar48;" (assignment_expression "bVar49 = bVar48" identifier = identifier) ;)) (if_statement "if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }" if (parenthesized_expression "(uVar47 - 0x8b < 2)" ( (binary_expression "uVar47 - 0x8b < 2" (binary_expression "uVar47 - 0x8b" identifier - number_literal) < number_literal) )) (compound_statement "{\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }" { (labeled_statement "LAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }" statement_identifier : (if_statement "if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }" if (parenthesized_expression "((char)puVar44 != '\0')" ( (binary_expression "(char)puVar44 != '\0'" (cast_expression "(char)puVar44" ( (type_descriptor "char" primitive_type) ) identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }" { (labeled_statement "LAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");" statement_identifier : (expression_statement "uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");" (assignment_expression "uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other")" identifier = (call_expression "gettext("MIPS16 and microMIPS functions cannot call each other")" identifier (argument_list "("MIPS16 and microMIPS functions cannot call each other")" ( (string_literal ""MIPS16 and microMIPS functions cannot call each other"" " string_content ") )))) ;)) (expression_statement "FUN_0034a750(uVar21);" (call_expression "FUN_0034a750(uVar21)" identifier (argument_list "(uVar21)" ( identifier ))) ;) }))) })) (labeled_statement "LAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;" statement_identifier : (expression_statement "local_98._0_1_ = (byte)uVar17;" (assignment_expression "local_98._0_1_ = (byte)uVar17" (field_expression "local_98._0_1_" identifier . field_identifier) = (cast_expression "(byte)uVar17" ( (type_descriptor "byte" type_identifier) ) identifier)) ;)) (expression_statement "bVar52 = (byte)puVar44;" (assignment_expression "bVar52 = (byte)puVar44" identifier = (cast_expression "(byte)puVar44" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (if_statement "if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }" { (expression_statement "local_e3 = (bVar52 ^ 1) & bVar49;" (assignment_expression "local_e3 = (bVar52 ^ 1) & bVar49" identifier = (binary_expression "(bVar52 ^ 1) & bVar49" (parenthesized_expression "(bVar52 ^ 1)" ( (binary_expression "bVar52 ^ 1" identifier ^ number_literal) )) & identifier)) ;) (expression_statement "local_e2 = local_e3;" (assignment_expression "local_e2 = local_e3" identifier = identifier) ;) (if_statement "if (local_e3 != 0) goto LAB_002c4e81;" if (parenthesized_expression "(local_e3 != 0)" ( (binary_expression "local_e3 != 0" identifier != number_literal) )) (goto_statement "goto LAB_002c4e81;" goto statement_identifier ;)) (expression_statement "local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;" (assignment_expression "local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85" identifier = (binary_expression "((byte)local_98 ^ 1) & uVar47 == 0x85" (parenthesized_expression "((byte)local_98 ^ 1)" ( (binary_expression "(byte)local_98 ^ 1" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) ^ number_literal) )) & (binary_expression "uVar47 == 0x85" identifier == number_literal))) ;) (if_statement "if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }" if (parenthesized_expression "(local_e3 == 0)" ( (binary_expression "local_e3 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }" { (labeled_statement "LAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;" statement_identifier : (expression_statement "local_e3 = (byte)local_98 | bVar52;" (assignment_expression "local_e3 = (byte)local_98 | bVar52" identifier = (binary_expression "(byte)local_98 | bVar52" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) | identifier)) ;)) (if_statement "if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }" if (parenthesized_expression "(uVar47 != 4 && uVar47 != 0x25)" ( (binary_expression "uVar47 != 4 && uVar47 != 0x25" (binary_expression "uVar47 != 4" identifier != number_literal) && (binary_expression "uVar47 != 0x25" identifier != number_literal)) )) (compound_statement "{\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }" { (expression_statement "local_e3 = uVar47 == 4 || uVar47 == 0x25;" (assignment_expression "local_e3 = uVar47 == 4 || uVar47 == 0x25" identifier = (binary_expression "uVar47 == 4 || uVar47 == 0x25" (binary_expression "uVar47 == 4" identifier == number_literal) || (binary_expression "uVar47 == 0x25" identifier == number_literal))) ;) })) (if_statement "if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;" if (parenthesized_expression "(param_8 != (undefined8 *)0x0)" ( (binary_expression "param_8 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_002c5175;" goto statement_identifier ;)) (expression_statement "local_e2 = 1;" (assignment_expression "local_e2 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_002c4e81;" goto statement_identifier ;) })) (expression_statement "local_84 = 0x85;" (assignment_expression "local_84 = 0x85" identifier = number_literal) ;) (expression_statement "auStack_80[0] = 0;" (assignment_expression "auStack_80[0] = 0" (subscript_expression "auStack_80[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "auStack_80[1] = 0;" (assignment_expression "auStack_80[1] = 0" (subscript_expression "auStack_80[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_f4 = 0x21;" (assignment_expression "local_f4 = 0x21" identifier = number_literal) ;) (expression_statement "local_e2 = local_e3;" (assignment_expression "local_e2 = local_e3" identifier = identifier) ;) (labeled_statement "LAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }" statement_identifier : (if_statement "if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }" if (parenthesized_expression "(1 < local_84 - 0x8b)" ( (binary_expression "1 < local_84 - 0x8b" number_literal < (binary_expression "local_84 - 0x8b" identifier - number_literal)) )) (compound_statement "{\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }" { (expression_statement "uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);" (assignment_expression "uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8)" identifier = (call_expression "(uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8)" (call_expression "(uint)(ushort)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(ushort)" ( identifier ))) (argument_list "((ushort)*param_10 << 8 | (ushort)*param_10 >> 8)" ( (binary_expression "(ushort)*param_10 << 8 | (ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10 << 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" ( identifier )) * identifier) << number_literal) | (binary_expression "(ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" ( identifier )) * identifier) >> number_literal)) )))) ;) (expression_statement "uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;" (assignment_expression "uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8" identifier = (binary_expression "*(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8" (binary_expression "*(ushort *)((long)param_10 + 2) << 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" * (cast_expression "(ushort *)((long)param_10 + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_10 + 2)" ( (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) << number_literal) | (binary_expression "*(ushort *)((long)param_10 + 2) >> 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" * (cast_expression "(ushort *)((long)param_10 + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_10 + 2)" ( (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) >> number_literal))) ;) (labeled_statement "LAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;" statement_identifier : (expression_statement "uVar17 = uVar17 << 0x10 | (uint)uVar29;" (assignment_expression "uVar17 = uVar17 << 0x10 | (uint)uVar29" identifier = (binary_expression "uVar17 << 0x10 | (uint)uVar29" (binary_expression "uVar17 << 0x10" identifier << number_literal) | (cast_expression "(uint)uVar29" ( (type_descriptor "uint" type_identifier) ) identifier))) ;)) (labeled_statement "LAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;" statement_identifier : (expression_statement "*(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;" (assignment_expression "*(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;)) }))) }) (else_clause "else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }" else (compound_statement "{\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }" { (labeled_statement "LAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);" statement_identifier : (expression_statement "cVar13 = FUN_002e7200(param_8);" (assignment_expression "cVar13 = FUN_002e7200(param_8)" identifier = (call_expression "FUN_002e7200(param_8)" identifier (argument_list "(param_8)" ( identifier )))) ;)) (if_statement "if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }" if (parenthesized_expression "(cVar13 == '\0')" ( (binary_expression "cVar13 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }" { (expression_statement "local_e3 = (bVar52 ^ 1) & bVar49;" (assignment_expression "local_e3 = (bVar52 ^ 1) & bVar49" identifier = (binary_expression "(bVar52 ^ 1) & bVar49" (parenthesized_expression "(bVar52 ^ 1)" ( (binary_expression "bVar52 ^ 1" identifier ^ number_literal) )) & identifier)) ;) (if_statement "if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;" if (parenthesized_expression "((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))" ( (binary_expression "(local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0)" (parenthesized_expression "(local_e3 == 0)" ( (binary_expression "local_e3 == 0" identifier == number_literal) )) && (parenthesized_expression "(local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0)" ( (comma_expression "local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0" (assignment_expression "local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85" identifier = (binary_expression "((byte)local_98 ^ 1) & uVar47 == 0x85" (parenthesized_expression "((byte)local_98 ^ 1)" ( (binary_expression "(byte)local_98 ^ 1" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) ^ number_literal) )) & (binary_expression "uVar47 == 0x85" identifier == number_literal))) , (binary_expression "local_e3 == 0" identifier == number_literal)) ))) )) (goto_statement "goto LAB_002c5694;" goto statement_identifier ;)) }) (else_clause "else {\n          local_e3 = 0;\n        }" else (compound_statement "{\n          local_e3 = 0;\n        }" { (expression_statement "local_e3 = 0;" (assignment_expression "local_e3 = 0" identifier = number_literal) ;) }))) (labeled_statement "LAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }" statement_identifier : (if_statement "if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }" if (parenthesized_expression "(*(char *)((long)param_8 + 100) != '\0')" ( (binary_expression "*(char *)((long)param_8 + 100) != '\0'" (pointer_expression "*(char *)((long)param_8 + 100)" * (cast_expression "(char *)((long)param_8 + 100)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 100)" ( (binary_expression "(long)param_8 + 100" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }" { (expression_statement "local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);" (assignment_expression "local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1)" identifier = (call_expression "FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1)" identifier (argument_list "(param_8,*(int *)(param_8 + 4) != 0,1)" ( identifier , (binary_expression "*(int *)(param_8 + 4) != 0" (pointer_expression "*(int *)(param_8 + 4)" * (cast_expression "(int *)(param_8 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 4)" ( (binary_expression "param_8 + 4" identifier + number_literal) )))) != number_literal) , number_literal )))) ;) (if_statement "if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;" if (parenthesized_expression "((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))" ( (binary_expression "(local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2)" (parenthesized_expression "(local_e2 == 0)" ( (binary_expression "local_e2 == 0" identifier == number_literal) )) && (parenthesized_expression "(local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2)" ( (comma_expression "local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2" (assignment_expression "local_e2 = uVar47 == 0x92 || uVar47 == 0x14" identifier = (binary_expression "uVar47 == 0x92 || uVar47 == 0x14" (binary_expression "uVar47 == 0x92" identifier == number_literal) || (binary_expression "uVar47 == 0x14" identifier == number_literal))) , (cast_expression "(bool)local_e2" ( (type_descriptor "bool" primitive_type) ) identifier)) ))) )) (goto_statement "goto LAB_002c5579;" goto statement_identifier ;)) (labeled_statement "LAB_002c4e81:\n          local_f4 = uVar47 - 100;" statement_identifier : (expression_statement "local_f4 = uVar47 - 100;" (assignment_expression "local_f4 = uVar47 - 100" identifier = (binary_expression "uVar47 - 100" identifier - number_literal)) ;)) (expression_statement "uVar34 = (ulong)(uVar47 - 0x85);" (assignment_expression "uVar34 = (ulong)(uVar47 - 0x85)" identifier = (call_expression "(ulong)(uVar47 - 0x85)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uVar47 - 0x85)" ( (binary_expression "uVar47 - 0x85" identifier - number_literal) )))) ;) (expression_statement "auStack_80[0] = 0;" (assignment_expression "auStack_80[0] = 0" (subscript_expression "auStack_80[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "auStack_80[1] = 0;" (assignment_expression "auStack_80[1] = 0" (subscript_expression "auStack_80[1]" identifier [ number_literal ]) = number_literal) ;) (if_statement "if (0xc < local_f4) goto LAB_002c55ef;" if (parenthesized_expression "(0xc < local_f4)" ( (binary_expression "0xc < local_f4" number_literal < identifier) )) (goto_statement "goto LAB_002c55ef;" goto statement_identifier ;)) (expression_statement "uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;" (assignment_expression "uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8" identifier = (binary_expression "(ushort)*param_10 << 8 | (ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10 << 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" ( identifier )) * identifier) << number_literal) | (binary_expression "(ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" ( identifier )) * identifier) >> number_literal))) ;) (expression_statement "uVar17 = (uint)uVar15;" (assignment_expression "uVar17 = (uint)uVar15" identifier = (cast_expression "(uint)uVar15" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;" (assignment_expression "uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8" identifier = (binary_expression "*(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8" (binary_expression "*(ushort *)((long)param_10 + 2) << 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" * (cast_expression "(ushort *)((long)param_10 + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_10 + 2)" ( (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) << number_literal) | (binary_expression "*(ushort *)((long)param_10 + 2) >> 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" * (cast_expression "(ushort *)((long)param_10 + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_10 + 2)" ( (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) >> number_literal))) ;) (expression_statement "local_84 = uVar47;" (assignment_expression "local_84 = uVar47" identifier = identifier) ;) (if_statement "if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }" if (parenthesized_expression "(uVar47 - 0x85 < 0x29)" ( (binary_expression "uVar47 - 0x85 < 0x29" (binary_expression "uVar47 - 0x85" identifier - number_literal) < number_literal) )) (compound_statement "{\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }" { (if_statement "if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;" if (parenthesized_expression "((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0)" ( (binary_expression "(0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0" (parenthesized_expression "(0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1)" ( (binary_expression "0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> (uVar34 & 0x3f)" number_literal >> (parenthesized_expression "(uVar34 & 0x3f)" ( (binary_expression "uVar34 & 0x3f" identifier & number_literal) ))) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_002c5704;" goto statement_identifier ;)) (goto_statement "goto LAB_002c4ee9;" goto statement_identifier ;) })) (if_statement "if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }" if (parenthesized_expression "(uVar47 == 100)" ( (binary_expression "uVar47 == 100" identifier == number_literal) )) (compound_statement "{\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }" { (expression_statement "local_f4 = 0;" (assignment_expression "local_f4 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_002c4ee9;" goto statement_identifier ;) })) (labeled_statement "LAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);" statement_identifier : (expression_statement "uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);" (assignment_expression "uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb)" identifier = (binary_expression "(uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb)" (binary_expression "(uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb" (binary_expression "(uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10" (binary_expression "(uint)(uVar15 & 0x7e0) | uVar29 & 0x1f" (call_expression "(uint)(uVar15 & 0x7e0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar15 & 0x7e0)" ( (binary_expression "uVar15 & 0x7e0" identifier & number_literal) ))) | (binary_expression "uVar29 & 0x1f" identifier & number_literal)) | (binary_expression "(uVar15 & 0xf800) << 0x10" (parenthesized_expression "(uVar15 & 0xf800)" ( (binary_expression "uVar15 & 0xf800" identifier & number_literal) )) << number_literal)) | (binary_expression "(uVar29 & 0xffe0) << 0xb" (parenthesized_expression "(uVar29 & 0xffe0)" ( (binary_expression "uVar29 & 0xffe0" identifier & number_literal) )) << number_literal)) | (call_expression "(uint)(((ulong)uVar15 & 0x1f) << 0xb)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(((ulong)uVar15 & 0x1f) << 0xb)" ( (binary_expression "((ulong)uVar15 & 0x1f) << 0xb" (parenthesized_expression "((ulong)uVar15 & 0x1f)" ( (binary_expression "(ulong)uVar15 & 0x1f" (cast_expression "(ulong)uVar15" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) )) << number_literal) ))))) ;)) (goto_statement "goto LAB_002c4ef1;" goto statement_identifier ;) }))) (expression_statement "local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);" (assignment_expression "local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0)" identifier = (call_expression "FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0)" identifier (argument_list "(param_8,*(int *)(param_8 + 4) != 0,0)" ( identifier , (binary_expression "*(int *)(param_8 + 4) != 0" (pointer_expression "*(int *)(param_8 + 4)" * (cast_expression "(int *)(param_8 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 4)" ( (binary_expression "param_8 + 4" identifier + number_literal) )))) != number_literal) , number_literal )))) ;) (if_statement "if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;" if (parenthesized_expression "((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))" ( (binary_expression "(local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92)" (parenthesized_expression "(local_e2 != 0)" ( (binary_expression "local_e2 != 0" identifier != number_literal) )) || (parenthesized_expression "(local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92)" ( (comma_expression "local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92" (assignment_expression "local_e2 = uVar47 == 0x14 || uVar47 == 0x92" identifier = (binary_expression "uVar47 == 0x14 || uVar47 == 0x92" (binary_expression "uVar47 == 0x14" identifier == number_literal) || (binary_expression "uVar47 == 0x92" identifier == number_literal))) , (binary_expression "uVar47 != 0x14 && uVar47 != 0x92" (binary_expression "uVar47 != 0x14" identifier != number_literal) && (binary_expression "uVar47 != 0x92" identifier != number_literal))) ))) )) (goto_statement "goto LAB_002c4e81;" goto statement_identifier ;)) (labeled_statement "LAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }" statement_identifier : (if_statement "if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }" if (parenthesized_expression "(uVar47 - 0x85 < 0x29)" ( (binary_expression "uVar47 - 0x85 < 0x29" (binary_expression "uVar47 - 0x85" identifier - number_literal) < number_literal) )) (compound_statement "{\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }" { (expression_statement "uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;" (assignment_expression "uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff" identifier = (binary_expression "1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff" (binary_expression "1L << ((byte)(uVar47 - 0x85) & 0x3f)" number_literal << (parenthesized_expression "((byte)(uVar47 - 0x85) & 0x3f)" ( (binary_expression "(byte)(uVar47 - 0x85) & 0x3f" (call_expression "(byte)(uVar47 - 0x85)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar47 - 0x85)" ( (binary_expression "uVar47 - 0x85" identifier - number_literal) ))) & number_literal) ))) & number_literal)) ;) (expression_statement "uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);" (assignment_expression "uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc)" identifier = (call_expression "(ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc)" ( (binary_expression "(-(uint)(uVar23 == 0) & 0xffffff82) + 0xc" (parenthesized_expression "(-(uint)(uVar23 == 0) & 0xffffff82)" ( (binary_expression "-(uint)(uVar23 == 0) & 0xffffff82" (unary_expression "-(uint)(uVar23 == 0)" - (call_expression "(uint)(uVar23 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar23 == 0)" ( (binary_expression "uVar23 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal) )))) ;) (expression_statement "local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;" (assignment_expression "local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d" identifier = (binary_expression "(-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d" (parenthesized_expression "(-(uint)(uVar23 == 0) & 0xffffff82)" ( (binary_expression "-(uint)(uVar23 == 0) & 0xffffff82" (unary_expression "-(uint)(uVar23 == 0)" - (call_expression "(uint)(uVar23 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar23 == 0)" ( (binary_expression "uVar23 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal)) ;) (expression_statement "uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;" (assignment_expression "uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91" identifier = (binary_expression "(-(uint)(uVar23 == 0) & 0xffffff82) + 0x91" (parenthesized_expression "(-(uint)(uVar23 == 0) & 0xffffff82)" ( (binary_expression "-(uint)(uVar23 == 0) & 0xffffff82" (unary_expression "-(uint)(uVar23 == 0)" - (call_expression "(uint)(uVar23 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar23 == 0)" ( (binary_expression "uVar23 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal)) ;) }) (else_clause "else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }" else (compound_statement "{\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }" { (expression_statement "uVar34 = 0xffffff8e;" (assignment_expression "uVar34 = 0xffffff8e" identifier = number_literal) ;) (expression_statement "uVar47 = 0x13;" (assignment_expression "uVar47 = 0x13" identifier = number_literal) ;) (expression_statement "local_f4 = 0xffffffaf;" (assignment_expression "local_f4 = 0xffffffaf" identifier = number_literal) ;) })))) (expression_statement "auStack_80[0] = 0;" (assignment_expression "auStack_80[0] = 0" (subscript_expression "auStack_80[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "auStack_80[1] = 0;" (assignment_expression "auStack_80[1] = 0" (subscript_expression "auStack_80[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_e2 = 0;" (assignment_expression "local_e2 = 0" identifier = number_literal) ;) (labeled_statement "LAB_002c55ef:\n        local_84 = uVar47;" statement_identifier : (expression_statement "local_84 = uVar47;" (assignment_expression "local_84 = uVar47" identifier = identifier) ;)) (if_statement "if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;" if (parenthesized_expression "(((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))" ( (binary_expression "((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0)" (parenthesized_expression "((uint)uVar34 < 0x29)" ( (binary_expression "(uint)uVar34 < 0x29" (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier) < number_literal) )) && (parenthesized_expression "((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0)" ( (binary_expression "(0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0" (parenthesized_expression "(0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1)" ( (binary_expression "0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> (uVar34 & 0x3f)" number_literal >> (parenthesized_expression "(uVar34 & 0x3f)" ( (binary_expression "uVar34 & 0x3f" identifier & number_literal) ))) & number_literal) )) != number_literal) ))) )) (goto_statement "goto LAB_002c581a;" goto statement_identifier ;)) }))) (expression_statement "uVar47 = local_84;" (assignment_expression "uVar47 = local_84" identifier = identifier) ;) (expression_statement "bVar48 = param_3 == 9;" (assignment_expression "bVar48 = param_3 == 9" identifier = (binary_expression "param_3 == 9" identifier == number_literal)) ;) (expression_statement "auStack_80[0] = 0;" (assignment_expression "auStack_80[0] = 0" (subscript_expression "auStack_80[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "auStack_80[1] = 0;" (assignment_expression "auStack_80[1] = 0" (subscript_expression "auStack_80[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar44 = &local_84;" (assignment_expression "puVar44 = &local_84" identifier = (pointer_expression "&local_84" & identifier)) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "local_e8 = 0;" (assignment_expression "local_e8 = 0" identifier = number_literal) ;) (expression_statement "uVar17 = local_84;" (assignment_expression "uVar17 = local_84" identifier = identifier) ;) (labeled_statement "LAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;" statement_identifier : (if_statement "if (uVar17 == 0) goto LAB_002c5380;" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c5380;" goto statement_identifier ;))) (expression_statement "bVar49 = local_b0 == uVar35;" (assignment_expression "bVar49 = local_b0 == uVar35" identifier = (binary_expression "local_b0 == uVar35" identifier == identifier)) ;) (expression_statement "bVar50 = local_c4 != 0;" (assignment_expression "bVar50 = local_c4 != 0" identifier = (binary_expression "local_c4 != 0" identifier != number_literal)) ;) (expression_statement "cVar13 = bVar49 && bVar50;" (assignment_expression "cVar13 = bVar49 && bVar50" identifier = (binary_expression "bVar49 && bVar50" identifier && identifier)) ;) (expression_statement "uVar36 = (uint)(byte)cVar13;" (assignment_expression "uVar36 = (uint)(byte)cVar13" identifier = (cast_expression "(uint)(byte)cVar13" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)cVar13" ( (type_descriptor "byte" type_identifier) ) identifier))) ;) (expression_statement "uVar34 = (ulong)uVar36;" (assignment_expression "uVar34 = (ulong)uVar36" identifier = (cast_expression "(ulong)uVar36" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (if_statement "if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }" if (parenthesized_expression "(*(char *)((long)param_1 + 4) == '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) == '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }" { (expression_statement "*(char *)((long)param_1 + 4) = cVar13;" (assignment_expression "*(char *)((long)param_1 + 4) = cVar13" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = identifier) ;) (switch_statement "switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }" switch (parenthesized_expression "(uVar17)" ( identifier )) (compound_statement "{\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }" { (case_statement "default:\n          goto switchD_002c5379_caseD_0;" default : (goto_statement "goto switchD_002c5379_caseD_0;" goto statement_identifier ;)) (case_statement "case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;" case number_literal : (expression_statement "uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;" (assignment_expression "uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8" identifier = (binary_expression "(ushort)*param_10 << 8 | (ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10 << 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" ( identifier )) * identifier) << number_literal) | (binary_expression "(ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" ( identifier )) * identifier) >> number_literal))) ;) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }" { (expression_statement "uVar17 = (uint)uVar15;" (assignment_expression "uVar17 = (uint)uVar15" identifier = (cast_expression "(uint)uVar15" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }" if (parenthesized_expression "((short)uVar15 < 0)" ( (binary_expression "(short)uVar15 < 0" (cast_expression "(short)uVar15" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier) < number_literal) )) (compound_statement "{\n              uVar17 = uVar15 - 0x10000;\n            }" { (expression_statement "uVar17 = uVar15 - 0x10000;" (assignment_expression "uVar17 = uVar15 - 0x10000" identifier = (binary_expression "uVar15 - 0x10000" identifier - number_literal)) ;) })) })) (goto_statement "goto LAB_002c70ec;" goto statement_identifier ;)) (case_statement "case 2:\n          goto switchD_002c5379_caseD_2;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2;" goto statement_identifier ;)) (case_statement "case 3:\n          goto switchD_002c4f87_caseD_3;" case number_literal : (goto_statement "goto switchD_002c4f87_caseD_3;" goto statement_identifier ;)) (case_statement "case 4:" case number_literal :) (case_statement "case 100:" case number_literal :) (case_statement "case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;" case number_literal : (expression_statement "bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);" (assignment_expression "bVar51 = (bool)((!bVar49 || !bVar50) & local_e3)" identifier = (cast_expression "(bool)((!bVar49 || !bVar50) & local_e3)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "((!bVar49 || !bVar50) & local_e3)" ( (binary_expression "(!bVar49 || !bVar50) & local_e3" (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) & identifier) )))) ;) (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;" (assignment_expression "uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" identifier = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal))) ;) (expression_statement "uVar45 = uVar16 | uVar36 << 0x18;" (assignment_expression "uVar45 = uVar16 | uVar36 << 0x18" identifier = (binary_expression "uVar16 | uVar36 << 0x18" identifier | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) (expression_statement "local_c0 = local_c8;" (assignment_expression "local_c0 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }" { (labeled_statement "LAB_002c7644:\n            bVar10 = bVar48;" statement_identifier : (expression_statement "bVar10 = bVar48;" (assignment_expression "bVar10 = bVar48" identifier = identifier) ;)) (if_statement "if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }" if (parenthesized_expression "(bVar51 == false)" ( (binary_expression "bVar51 == false" identifier == false) )) (compound_statement "{\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }" { (labeled_statement "LAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;" statement_identifier : (expression_statement "bVar51 = param_8 == (undefined8 *)0x0;" (assignment_expression "bVar51 = param_8 == (undefined8 *)0x0" identifier = (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;)) (if_statement "if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;" if (parenthesized_expression "((local_e3 == 1) || (uVar17 != 0x85))" ( (binary_expression "(local_e3 == 1) || (uVar17 != 0x85)" (parenthesized_expression "(local_e3 == 1)" ( (binary_expression "local_e3 == 1" identifier == number_literal) )) || (parenthesized_expression "(uVar17 != 0x85)" ( (binary_expression "uVar17 != 0x85" identifier != number_literal) ))) )) (goto_statement "goto LAB_002c73c9;" goto statement_identifier ;)) (if_statement "if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }" if (parenthesized_expression "(bVar51)" ( identifier )) (compound_statement "{\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }" { (expression_statement "local_118 = 1;" (assignment_expression "local_118 = 1" identifier = number_literal) ;) (expression_statement "uVar36 = 0xf8000000;" (assignment_expression "uVar36 = 0xf8000000" identifier = number_literal) ;) (goto_statement "goto LAB_002c73e1;" goto statement_identifier ;) })) (expression_statement "local_118 = 1;" (assignment_expression "local_118 = 1" identifier = number_literal) ;) (expression_statement "uVar36 = local_c0 & 0x7ffffff;" (assignment_expression "uVar36 = local_c0 & 0x7ffffff" identifier = (binary_expression "local_c0 & 0x7ffffff" identifier & number_literal)) ;) (if_statement "if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }" if (parenthesized_expression "((local_c0 & 0x4000000) != 0)" ( (binary_expression "(local_c0 & 0x4000000) != 0" (parenthesized_expression "(local_c0 & 0x4000000)" ( (binary_expression "local_c0 & 0x4000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }" { (expression_statement "uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;" (assignment_expression "uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000" identifier = (binary_expression "(local_c0 & 0x7ffffff) + 0xf8000000" (parenthesized_expression "(local_c0 & 0x7ffffff)" ( (binary_expression "local_c0 & 0x7ffffff" identifier & number_literal) )) + number_literal)) ;) })) (goto_statement "goto LAB_002c73f5;" goto statement_identifier ;) })) (labeled_statement "LAB_002c7cf3:\n            bVar48 = bVar10;" statement_identifier : (expression_statement "bVar48 = bVar10;" (assignment_expression "bVar48 = bVar10" identifier = identifier) ;)) (expression_statement "bVar52 = FUN_001d7270(param_9,plVar3,0);" (assignment_expression "bVar52 = FUN_001d7270(param_9,plVar3,0)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,0)" identifier (argument_list "(param_9,plVar3,0)" ( identifier , identifier , number_literal )))) ;) (if_statement "if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;" if (parenthesized_expression "((bool)(bVar52 & 3) == (uVar17 == 4))" ( (binary_expression "(bool)(bVar52 & 3) == (uVar17 == 4)" (cast_expression "(bool)(bVar52 & 3)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "(bVar52 & 3)" ( (binary_expression "bVar52 & 3" identifier & number_literal) ))) == (parenthesized_expression "(uVar17 == 4)" ( (binary_expression "uVar17 == 4" identifier == number_literal) ))) )) (goto_statement "goto LAB_002c764c;" goto statement_identifier ;)) (expression_statement "uVar21 = gettext("JALX to a non-word-aligned address");" (assignment_expression "uVar21 = gettext("JALX to a non-word-aligned address")" identifier = (call_expression "gettext("JALX to a non-word-aligned address")" identifier (argument_list "("JALX to a non-word-aligned address")" ( (string_literal ""JALX to a non-word-aligned address"" " string_content ") )))) ;) (expression_statement "FUN_0034a800(uVar21);" (call_expression "FUN_0034a800(uVar21)" identifier (argument_list "(uVar21)" ( identifier ))) ;) (labeled_statement "LAB_002c7d32:\n            uVar16 = 2;" statement_identifier : (expression_statement "uVar16 = 2;" (assignment_expression "uVar16 = 2" identifier = number_literal) ;)) }) (else_clause "else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }" else (compound_statement "{\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }" { (if_statement "if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }" if (parenthesized_expression "(uVar17 == 0x85)" ( (binary_expression "uVar17 == 0x85" identifier == number_literal) )) (compound_statement "{\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }" { (expression_statement "local_c0 = uVar45 * 2 & 0x7fffffe;" (assignment_expression "local_c0 = uVar45 * 2 & 0x7fffffe" identifier = (binary_expression "uVar45 * 2 & 0x7fffffe" (binary_expression "uVar45 * 2" identifier * number_literal) & number_literal)) ;) (goto_statement "goto LAB_002c7644;" goto statement_identifier ;) })) (expression_statement "local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;" (assignment_expression "local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2" identifier = (binary_expression "(uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2" (parenthesized_expression "(uVar16 | uVar36 << 0x18 & 0x3ffffff)" ( (binary_expression "uVar16 | uVar36 << 0x18 & 0x3ffffff" identifier | (binary_expression "uVar36 << 0x18 & 0x3ffffff" (binary_expression "uVar36 << 0x18" identifier << number_literal) & number_literal)) )) << number_literal)) ;) (expression_statement "bVar10 = bVar51;" (assignment_expression "bVar10 = bVar51" identifier = identifier) ;) (if_statement "if (bVar51 != false) goto LAB_002c7cf3;" if (parenthesized_expression "(bVar51 != false)" ( (binary_expression "bVar51 != false" identifier != false) )) (goto_statement "goto LAB_002c7cf3;" goto statement_identifier ;)) (labeled_statement "LAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;" statement_identifier : (expression_statement "bVar51 = param_8 == (undefined8 *)0x0;" (assignment_expression "bVar51 = param_8 == (undefined8 *)0x0" identifier = (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;)) (if_statement "if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }" if (parenthesized_expression "(bVar51)" ( identifier )) (compound_statement "{\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }" { (expression_statement "local_118 = 2;" (assignment_expression "local_118 = 2" identifier = number_literal) ;) (expression_statement "uVar36 = 0xf0000000;" (assignment_expression "uVar36 = 0xf0000000" identifier = number_literal) ;) (labeled_statement "LAB_002c73e1:\n              bVar51 = true;" statement_identifier : (expression_statement "bVar51 = true;" (assignment_expression "bVar51 = true" identifier = true) ;)) (expression_statement "uVar36 = param_11 + 4 & uVar36 | local_c0;" (assignment_expression "uVar36 = param_11 + 4 & uVar36 | local_c0" identifier = (binary_expression "param_11 + 4 & uVar36 | local_c0" (binary_expression "param_11 + 4 & uVar36" (binary_expression "param_11 + 4" identifier + number_literal) & identifier) | identifier)) ;) }) (else_clause "else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }" else (compound_statement "{\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }" { (expression_statement "local_118 = 2;" (assignment_expression "local_118 = 2" identifier = number_literal) ;) (expression_statement "uVar36 = local_c0 & 0xfffffff;" (assignment_expression "uVar36 = local_c0 & 0xfffffff" identifier = (binary_expression "local_c0 & 0xfffffff" identifier & number_literal)) ;) (if_statement "if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }" if (parenthesized_expression "((local_c0 & 0x8000000) != 0)" ( (binary_expression "(local_c0 & 0x8000000) != 0" (parenthesized_expression "(local_c0 & 0x8000000)" ( (binary_expression "local_c0 & 0x8000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }" { (expression_statement "uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;" (assignment_expression "uVar36 = (local_c0 & 0xfffffff) + 0xf0000000" identifier = (binary_expression "(local_c0 & 0xfffffff) + 0xf0000000" (parenthesized_expression "(local_c0 & 0xfffffff)" ( (binary_expression "local_c0 & 0xfffffff" identifier & number_literal) )) + number_literal)) ;) })) }))) (labeled_statement "LAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);" statement_identifier : (expression_statement "uVar36 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "uVar36 = FUN_001d7270(param_9,plVar3,uVar36)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" identifier (argument_list "(param_9,plVar3,uVar36)" ( identifier , identifier , identifier )))) ;)) (if_statement "if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }" if (parenthesized_expression "(((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f)))))" ( (binary_expression "((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))" (parenthesized_expression "((!bVar51) && (!bVar49 || !bVar50))" ( (binary_expression "(!bVar51) && (!bVar49 || !bVar50)" (parenthesized_expression "(!bVar51)" ( (unary_expression "!bVar51" ! identifier) )) && (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) ))) )) && (parenthesized_expression "((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))" ( (parenthesized_expression "(cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f)))" ( (comma_expression "cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))" (assignment_expression "cVar13 = FUN_002e7200(param_8)" identifier = (call_expression "FUN_002e7200(param_8)" identifier (argument_list "(param_8)" ( identifier )))) , (binary_expression "cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))" (binary_expression "cVar13 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))" ( (binary_expression "(uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f)" (binary_expression "(uVar36 >> local_118) >> 0x1a" (parenthesized_expression "(uVar36 >> local_118)" ( (binary_expression "uVar36 >> local_118" identifier >> identifier) )) >> number_literal) != (binary_expression "param_11 + 4 >> (local_118 + 0x1aU & 0x1f)" (binary_expression "param_11 + 4" identifier + number_literal) >> (parenthesized_expression "(local_118 + 0x1aU & 0x1f)" ( (binary_expression "local_118 + 0x1aU & 0x1f" (binary_expression "local_118 + 0x1aU" identifier + number_literal) & number_literal) )))) )))) )) ))) )) (compound_statement "{\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }" { (labeled_statement "LAB_002c7359:\n              uVar16 = 1;" statement_identifier : (expression_statement "uVar16 = 1;" (assignment_expression "uVar16 = 1" identifier = number_literal) ;)) (goto_statement "goto LAB_002c5940;" goto statement_identifier ;) })) (expression_statement "uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;" (assignment_expression "uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff" identifier = (binary_expression "uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff" identifier ^ (binary_expression "(uVar36 >> local_118 ^ uVar45) & 0x3ffffff" (parenthesized_expression "(uVar36 >> local_118 ^ uVar45)" ( (binary_expression "uVar36 >> local_118 ^ uVar45" (binary_expression "uVar36 >> local_118" identifier >> identifier) ^ identifier) )) & number_literal))) ;) (if_statement "if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }" if (parenthesized_expression "(local_e3 != 0)" ( (binary_expression "local_e3 != 0" identifier != number_literal) )) (compound_statement "{\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }" { (expression_statement "uVar45 = uVar45 >> 0x1a;" (assignment_expression "uVar45 = uVar45 >> 0x1a" identifier = (binary_expression "uVar45 >> 0x1a" identifier >> number_literal)) ;) (if_statement "if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" if (parenthesized_expression "(uVar17 == 100)" ( (binary_expression "uVar17 == 100" identifier == number_literal) )) (compound_statement "{\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }" { (expression_statement "iVar38 = 7;" (assignment_expression "iVar38 = 7" identifier = number_literal) ;) (expression_statement "bVar51 = uVar45 - 6 < 2;" (assignment_expression "bVar51 = uVar45 - 6 < 2" identifier = (binary_expression "uVar45 - 6 < 2" (binary_expression "uVar45 - 6" identifier - number_literal) < number_literal)) ;) }) (else_clause "else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" else (if_statement "if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" if (parenthesized_expression "(uVar17 == 0x85)" ( (binary_expression "uVar17 == 0x85" identifier == number_literal) )) (compound_statement "{\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }" { (expression_statement "iVar38 = 0x3c;" (assignment_expression "iVar38 = 0x3c" identifier = number_literal) ;) (expression_statement "bVar51 = uVar45 - 0x3c < 2;" (assignment_expression "bVar51 = uVar45 - 0x3c < 2" identifier = (binary_expression "uVar45 - 0x3c < 2" (binary_expression "uVar45 - 0x3c" identifier - number_literal) < number_literal)) ;) }) (else_clause "else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" else (compound_statement "{\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" { (expression_statement "bVar51 = uVar45 == 3 || uVar45 == 0x1d;" (assignment_expression "bVar51 = uVar45 == 3 || uVar45 == 0x1d" identifier = (binary_expression "uVar45 == 3 || uVar45 == 0x1d" (binary_expression "uVar45 == 3" identifier == number_literal) || (binary_expression "uVar45 == 0x1d" identifier == number_literal))) ;) (expression_statement "iVar38 = 0x1d;" (assignment_expression "iVar38 = 0x1d" identifier = number_literal) ;) }))))) (if_statement "if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }" if (parenthesized_expression "((!bVar51) && (!bVar49 || !bVar50))" ( (binary_expression "(!bVar51) && (!bVar49 || !bVar50)" (parenthesized_expression "(!bVar51)" ( (unary_expression "!bVar51" ! identifier) )) && (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) ))) )) (compound_statement "{\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }" { (expression_statement "uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );" (assignment_expression "uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                )" identifier = (call_expression "gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                )" identifier (argument_list "(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                )" ( (string_literal ""Unsupported jump between ISA modes; consider recompiling with interlinking enabled."" " string_content ") )))) ;) (expression_statement "FUN_0034a750(uVar21);" (call_expression "FUN_0034a750(uVar21)" identifier (argument_list "(uVar21)" ( identifier ))) ;) (goto_statement "goto LAB_002c7d32;" goto statement_identifier ;) })) (expression_statement "uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;" (assignment_expression "uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a" identifier = (binary_expression "uVar19 & 0x3ffffff | iVar38 << 0x1a" (binary_expression "uVar19 & 0x3ffffff" identifier & number_literal) | (binary_expression "iVar38 << 0x1a" identifier << number_literal))) ;) })) (if_statement "if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }" if (parenthesized_expression "(*(long *)(PTR_DAT_0067cb08 + 0x10) == 0)" ( (binary_expression "*(long *)(PTR_DAT_0067cb08 + 0x10) == 0" (pointer_expression "*(long *)(PTR_DAT_0067cb08 + 0x10)" * (cast_expression "(long *)(PTR_DAT_0067cb08 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0067cb08 + 0x10)" ( (binary_expression "PTR_DAT_0067cb08 + 0x10" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    \n              FUN_002932f0();\n            }" { (expression_statement "FUN_002932f0();" (call_expression "FUN_002932f0()" identifier (argument_list "()" ( ))) ;) })) (if_statement "if (!bVar49 || !bVar50) goto LAB_002c5ccb;" if (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) (goto_statement "goto LAB_002c5ccb;" goto statement_identifier ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_1 = uVar19;" (assignment_expression "*(uint *)param_1 = uVar19" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }))) (goto_statement "goto LAB_002c5940;" goto statement_identifier ;)) (case_statement "case 5:" case number_literal :) (case_statement "case 0x68:" case number_literal :) (case_statement "case 0x86:\n          goto switchD_002c5379_caseD_5;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_5;" goto statement_identifier ;)) (case_statement "case 6:" case number_literal :) (case_statement "case 0x69:" case number_literal :) (case_statement "case 0x87:" case number_literal :) (case_statement "case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;" case number_literal : (expression_statement "local_130 = (uint)*param_10;" (assignment_expression "local_130 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar16 = (local_130 & 0xff0000) >> 8;" (assignment_expression "uVar16 = (local_130 & 0xff0000) >> 8" identifier = (binary_expression "(local_130 & 0xff0000) >> 8" (parenthesized_expression "(local_130 & 0xff0000)" ( (binary_expression "local_130 & 0xff0000" identifier & number_literal) )) >> number_literal)) ;) (expression_statement "uVar45 = local_130 >> 0x18 | uVar16;" (assignment_expression "uVar45 = local_130 >> 0x18 | uVar16" identifier = (binary_expression "local_130 >> 0x18 | uVar16" (binary_expression "local_130 >> 0x18" identifier >> number_literal) | identifier)) ;) (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" identifier = identifier) ;) (if_statement "if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }" if (parenthesized_expression "((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0))" ( (binary_expression "(bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)" (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) && (parenthesized_expression "(uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)" ( (comma_expression "uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0" (assignment_expression "uVar19 = uVar45 - 0x10000" identifier = (binary_expression "uVar45 - 0x10000" identifier - number_literal)) , (binary_expression "(uVar16 & 0x8000) == 0" (parenthesized_expression "(uVar16 & 0x8000)" ( (binary_expression "uVar16 & 0x8000" identifier & number_literal) )) == number_literal)) ))) )) (compound_statement "{\n            uVar19 = uVar45;\n          }" { (expression_statement "uVar19 = uVar45;" (assignment_expression "uVar19 = uVar45" identifier = identifier) ;) })) (goto_statement "goto LAB_002c7171;" goto statement_identifier ;)) (case_statement "case 7:" case number_literal :) (case_statement "case 8:" case number_literal :) (case_statement "case 0x65:" case number_literal :) (case_statement "case 0x88:" case number_literal :) (case_statement "case 0x89:" case number_literal :) (case_statement "case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;" case number_literal : (expression_statement "lVar30 = *(long *)(param_4 + 0x28);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x28)" identifier = (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) goto LAB_002c7253;" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (goto_statement "goto LAB_002c7253;" goto statement_identifier ;)) (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) (labeled_statement "LAB_002c7297:\n          uVar36 = (uint)*param_10;" statement_identifier : (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar19 = (uVar36 & 0xff0000) >> 8;" (assignment_expression "uVar19 = (uVar36 & 0xff0000) >> 8" identifier = (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) ;) (expression_statement "uVar16 = uVar36 >> 0x18 | uVar19;" (assignment_expression "uVar16 = uVar36 >> 0x18 | uVar19" identifier = (binary_expression "uVar36 >> 0x18 | uVar19" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | identifier)) ;) (expression_statement "uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;" (assignment_expression "uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" identifier = (binary_expression "uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar16 | (uVar36 & 0xff00) << 8" identifier | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }" { (if_statement "if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }" if (parenthesized_expression "(uVar17 == 0xac)" ( (binary_expression "uVar17 == 0xac" identifier == number_literal) )) (compound_statement "{\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }" { (expression_statement "uVar36 = uVar45 * 4 & 0x1fc;" (assignment_expression "uVar36 = uVar45 * 4 & 0x1fc" identifier = (binary_expression "uVar45 * 4 & 0x1fc" (binary_expression "uVar45 * 4" identifier * number_literal) & number_literal)) ;) }) (else_clause "else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }" else (compound_statement "{\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }" { (expression_statement "uVar36 = uVar16 - 0x10000;" (assignment_expression "uVar36 = uVar16 - 0x10000" identifier = (binary_expression "uVar16 - 0x10000" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }" if (parenthesized_expression "((uVar19 & 0x8000) == 0)" ( (binary_expression "(uVar19 & 0x8000) == 0" (parenthesized_expression "(uVar19 & 0x8000)" ( (binary_expression "uVar19 & 0x8000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                uVar36 = uVar16;\n              }" { (expression_statement "uVar36 = uVar16;" (assignment_expression "uVar36 = uVar16" identifier = identifier) ;) })) }))) })) (goto_statement "goto LAB_002c72d4;" goto statement_identifier ;)) (case_statement "case 9:" case number_literal :) (case_statement "case 0x66:" case number_literal :) (case_statement "case 0x8a:\n          goto switchD_002c5379_caseD_9;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_9;" goto statement_identifier ;)) (case_statement "case 10:\n          goto LAB_002c6a55;" case number_literal : (goto_statement "goto LAB_002c6a55;" goto statement_identifier ;)) (case_statement "case 0xb:" case number_literal :) (case_statement "case 0x67:" case number_literal :) (case_statement "case 0x8e:\n          goto switchD_002c5379_caseD_b;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_b;" goto statement_identifier ;)) (case_statement "case 0xc:\n          goto switchD_002c5379_caseD_c;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_c;" goto statement_identifier ;)) (case_statement "case 0x12:\n          goto switchD_002c5379_caseD_12;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_12;" goto statement_identifier ;)) (case_statement "case 0x13:" case number_literal :) (case_statement "case 0x91:" case number_literal :) (case_statement "case 0xf9:\n          goto switchD_002c5379_caseD_13;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_13;" goto statement_identifier ;)) (case_statement "case 0x14:" case number_literal :) (case_statement "case 0x92:\n          goto switchD_002c5379_caseD_14;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_14;" goto statement_identifier ;)) (case_statement "case 0x15:" case number_literal :) (case_statement "case 0x93:\n          goto switchD_002c5379_caseD_15;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_15;" goto statement_identifier ;)) (case_statement "case 0x16:" case number_literal :) (case_statement "case 0x1e:" case number_literal :) (case_statement "case 0x94:" case number_literal :) (case_statement "case 0x99:\n          goto switchD_002c5379_caseD_16;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_16;" goto statement_identifier ;)) (case_statement "case 0x17:" case number_literal :) (case_statement "case 0x1f:" case number_literal :) (case_statement "case 0x95:" case number_literal :) (case_statement "case 0x9a:\n          goto switchD_002c5379_caseD_17;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_17;" goto statement_identifier ;)) (case_statement "case 0x18:" case number_literal :) (case_statement "case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;" case number_literal : (expression_statement "local_c0 = local_c8;" (assignment_expression "local_c0 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }" { (expression_statement "uVar34 = *param_10;" (assignment_expression "uVar34 = *param_10" identifier = (pointer_expression "*param_10" * identifier)) ;) (expression_statement "local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;" (assignment_expression "local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000" identifier = (binary_expression "(uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000" (binary_expression "(uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000" (binary_expression "(uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8" (call_expression "(uint)(byte)(uVar34 >> 0x38)" (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(byte)" ( identifier ))) (argument_list "(uVar34 >> 0x38)" ( (binary_expression "uVar34 >> 0x38" identifier >> number_literal) ))) | (binary_expression "((uint)(uVar34 >> 0x20) & 0xff0000) >> 8" (parenthesized_expression "((uint)(uVar34 >> 0x20) & 0xff0000)" ( (binary_expression "(uint)(uVar34 >> 0x20) & 0xff0000" (call_expression "(uint)(uVar34 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar34 >> 0x20)" ( (binary_expression "uVar34 >> 0x20" identifier >> number_literal) ))) & number_literal) )) >> number_literal)) | (binary_expression "(uint)(uVar34 >> 0x18) & 0xff0000" (call_expression "(uint)(uVar34 >> 0x18)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar34 >> 0x18)" ( (binary_expression "uVar34 >> 0x18" identifier >> number_literal) ))) & number_literal)) | (binary_expression "(uint)(uVar34 >> 8) & 0xff000000" (call_expression "(uint)(uVar34 >> 8)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar34 >> 8)" ( (binary_expression "uVar34 >> 8" identifier >> number_literal) ))) & number_literal))) ;) })) (goto_statement "goto LAB_002c6b1a;" goto statement_identifier ;)) (case_statement "case 0x1c:" case number_literal :) (case_statement "case 0x97:\n          goto LAB_002c59bd;" case number_literal : (goto_statement "goto LAB_002c59bd;" goto statement_identifier ;)) (case_statement "case 0x1d:" case number_literal :) (case_statement "case 0x98:\n          goto LAB_002c6b55;" case number_literal : (goto_statement "goto LAB_002c6b55;" goto statement_identifier ;)) (case_statement "case 0x25:" case number_literal :) (case_statement "case 0x9c:\n          goto switchD_002c5379_caseD_25;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_25;" goto statement_identifier ;)) (case_statement "case 0x27:" case number_literal :) (case_statement "case 0x29:\n          goto switchD_002c5379_caseD_27;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_27;" goto statement_identifier ;)) (case_statement "case 0x2a:" case number_literal :) (case_statement "case 0x6a:" case number_literal :) (case_statement "case 0xa2:\n          goto switchD_002c5379_caseD_2a;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2a;" goto statement_identifier ;)) (case_statement "case 0x2b:" case number_literal :) (case_statement "case 0x6b:" case number_literal :) (case_statement "case 0xa3:\n          goto switchD_002c5379_caseD_2b;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2b;" goto statement_identifier ;)) (case_statement "case 0x2c:" case number_literal :) (case_statement "case 0x6c:" case number_literal :) (case_statement "case 0xa4:\n          goto switchD_002c5379_caseD_2c;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2c;" goto statement_identifier ;)) (case_statement "case 0x2d:" case number_literal :) (case_statement "case 0x6d:" case number_literal :) (case_statement "case 0xa5:\n          goto switchD_002c5379_caseD_2d;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2d;" goto statement_identifier ;)) (case_statement "case 0x2e:" case number_literal :) (case_statement "case 0x6e:" case number_literal :) (case_statement "case 0xa6:\n          goto switchD_002c5379_caseD_2e;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2e;" goto statement_identifier ;)) (case_statement "case 0x2f:" case number_literal :) (case_statement "case 0x30:\n          goto switchD_002c5379_caseD_2f;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_2f;" goto statement_identifier ;)) (case_statement "case 0x31:" case number_literal :) (case_statement "case 0x6f:" case number_literal :) (case_statement "case 0xa9:\n          goto switchD_002c5379_caseD_31;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_31;" goto statement_identifier ;)) (case_statement "case 0x32:" case number_literal :) (case_statement "case 0x70:" case number_literal :) (case_statement "case 0xaa:\n          goto switchD_002c5379_caseD_32;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_32;" goto statement_identifier ;)) (case_statement "case 0x3c:\n          goto LAB_002c6f06;" case number_literal : (goto_statement "goto LAB_002c6f06;" goto statement_identifier ;)) (case_statement "case 0x3d:\n          goto LAB_002c6fd2;" case number_literal : (goto_statement "goto LAB_002c6fd2;" goto statement_identifier ;)) (case_statement "case 0x3e:\n          goto LAB_002c6d53;" case number_literal : (goto_statement "goto LAB_002c6d53;" goto statement_identifier ;)) (case_statement "case 0x3f:\n          goto LAB_002c6e24;" case number_literal : (goto_statement "goto LAB_002c6e24;" goto statement_identifier ;)) (case_statement "case 0x40:\n          goto switchD_002c5379_caseD_40;" case number_literal : (goto_statement "goto switchD_002c5379_caseD_40;" goto statement_identifier ;)) (case_statement "case 0x41:\n          goto LAB_002c6ccf;" case number_literal : (goto_statement "goto LAB_002c6ccf;" goto statement_identifier ;)) (case_statement "case 0x8b:\n          goto LAB_002c6bb8;" case number_literal : (goto_statement "goto LAB_002c6bb8;" goto statement_identifier ;)) (case_statement "case 0x8c:\n          goto LAB_002c6c3e;" case number_literal : (goto_statement "goto LAB_002c6c3e;" goto statement_identifier ;)) (case_statement "case 0x8d:\n          goto LAB_002c69c5;" case number_literal : (goto_statement "goto LAB_002c69c5;" goto statement_identifier ;)) (case_statement "case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;" case number_literal : (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }" { (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;" (assignment_expression "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) })) (goto_statement "goto LAB_002c6ed9;" goto statement_identifier ;)) })) })) (expression_statement "local_c8 = (uint)*param_1;" (assignment_expression "local_c8 = (uint)*param_1" identifier = (binary_expression "(uint)*param_1" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "*(char *)((long)param_1 + 4) = cVar13;" (assignment_expression "*(char *)((long)param_1 + 4) = cVar13" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = identifier) ;) (expression_statement "local_c0 = local_c8;" (assignment_expression "local_c0 = local_c8" identifier = identifier) ;) (switch_statement "switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }" switch (parenthesized_expression "(uVar17)" ( identifier )) (compound_statement "{\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }" { (case_statement "default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;" default : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");" statement_identifier : (expression_statement "uVar21 = gettext("unsupported reloc %u");" (assignment_expression "uVar21 = gettext("unsupported reloc %u")" identifier = (call_expression "gettext("unsupported reloc %u")" identifier (argument_list "("unsupported reloc %u")" ( (string_literal ""unsupported reloc %u"" " string_content ") )))) ;)) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17)" identifier (argument_list "(param_2,param_6,uVar35,uVar21,uVar17)" ( identifier , identifier , identifier , identifier , identifier ))) ;) (break_statement "break;" break ;)) (case_statement "case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) (labeled_statement "LAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);" statement_identifier : (expression_statement "uVar19 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "uVar19 = FUN_001d7270(param_9,plVar3,uVar17)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" identifier (argument_list "(param_9,plVar3,uVar17)" ( identifier , identifier , identifier )))) ;)) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "*(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;" (assignment_expression "*(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8" (pointer_expression "*(ushort *)param_10" * (cast_expression "(ushort *)param_10" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "(ushort)uVar19 << 8 | (ushort)uVar19 >> 8" (binary_expression "(ushort)uVar19 << 8" (cast_expression "(ushort)uVar19" ( (type_descriptor "ushort" type_identifier) ) identifier) << number_literal) | (binary_expression "(ushort)uVar19 >> 8" (cast_expression "(ushort)uVar19" ( (type_descriptor "ushort" type_identifier) ) identifier) >> number_literal))) ;) (expression_statement "uVar16 = (uint)(0xffff < uVar19 + 0x8000);" (assignment_expression "uVar16 = (uint)(0xffff < uVar19 + 0x8000)" identifier = (call_expression "(uint)(0xffff < uVar19 + 0x8000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffff < uVar19 + 0x8000)" ( (binary_expression "0xffff < uVar19 + 0x8000" number_literal < (binary_expression "uVar19 + 0x8000" identifier + number_literal)) )))) ;) (break_statement "break;" break ;)) (case_statement "case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);" statement_identifier : (expression_statement "cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);" (assignment_expression "cVar13 = FUN_0029fc10(param_8,2,param_5,param_4)" identifier = (call_expression "FUN_0029fc10(param_8,2,param_5,param_4)" identifier (argument_list "(param_8,2,param_5,param_4)" ( identifier , number_literal , identifier , identifier )))) ;)) (if_statement "if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }" if (parenthesized_expression "(cVar13 != '\0')" ( (binary_expression "cVar13 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }" { (expression_statement "cVar13 = *(char *)((long)param_1 + 4);" (assignment_expression "cVar13 = *(char *)((long)param_1 + 4)" identifier = (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }" { (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;" (assignment_expression "uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18" identifier = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) })) (expression_statement "uVar36 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "uVar36 = FUN_001d7270(param_9,plVar3,uVar36)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" identifier (argument_list "(param_9,plVar3,uVar36)" ( identifier , identifier , identifier )))) ;) (if_statement "if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }" if (parenthesized_expression "(cVar13 == '\0')" ( (binary_expression "cVar13 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }" { (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;" (assignment_expression "*(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) }) (else_clause "else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }" else (compound_statement "{\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }" { (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_1 = uVar36;" (assignment_expression "*(uint *)param_1 = uVar36" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }))) })) (if_statement "if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;" if (parenthesized_expression "((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1))))" ( (binary_expression "(param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))" (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))" ( (parenthesized_expression "((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1))" ( (binary_expression "(bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)" (parenthesized_expression "(bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20))" ( (comma_expression "bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)" (assignment_expression "bVar52 = *(byte *)((long)param_8 + 0x39) >> 2" identifier = (binary_expression "*(byte *)((long)param_8 + 0x39) >> 2" (pointer_expression "*(byte *)((long)param_8 + 0x39)" * (cast_expression "(byte *)((long)param_8 + 0x39)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x39)" ( (binary_expression "(long)param_8 + 0x39" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) >> number_literal)) , (binary_expression "(bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)" (binary_expression "(bVar52 & 0x3c) != 0x3c" (parenthesized_expression "(bVar52 & 0x3c)" ( (binary_expression "bVar52 & 0x3c" identifier & number_literal) )) != number_literal) && (parenthesized_expression "((bVar52 & 0x30) != 0x20)" ( (binary_expression "(bVar52 & 0x30) != 0x20" (parenthesized_expression "(bVar52 & 0x30)" ( (binary_expression "bVar52 & 0x30" identifier & number_literal) )) != number_literal) )))) )) || (parenthesized_expression "(*(int *)((long)param_8 + 0x5c) != 1)" ( (binary_expression "*(int *)((long)param_8 + 0x5c) != 1" (pointer_expression "*(int *)((long)param_8 + 0x5c)" * (cast_expression "(int *)((long)param_8 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x5c)" ( (binary_expression "(long)param_8 + 0x5c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != number_literal) ))) )) ))) )) (break_statement "break;" break ;)) (expression_statement "lVar30 = param_8[0xe];" (assignment_expression "lVar30 = param_8[0xe]" identifier = (subscript_expression "param_8[0xe]" identifier [ number_literal ])) ;) (if_statement "if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }" { (if_statement "if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }" if (parenthesized_expression "(*(char *)(param_8 + 9) == '\0')" ( (binary_expression "*(char *)(param_8 + 9) == '\0'" (pointer_expression "*(char *)(param_8 + 9)" * (cast_expression "(char *)(param_8 + 9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 9)" ( (binary_expression "param_8 + 9" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }" { (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2e46,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;) })) (expression_statement "local_68 = FUN_00298450(lVar30,lVar30 + 8);" (assignment_expression "local_68 = FUN_00298450(lVar30,lVar30 + 8)" identifier = (call_expression "FUN_00298450(lVar30,lVar30 + 8)" identifier (argument_list "(lVar30,lVar30 + 8)" ( identifier , (binary_expression "lVar30 + 8" identifier + number_literal) )))) ;) (expression_statement "param_9 = (uint *)&local_78;" (assignment_expression "param_9 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;) })) (expression_statement "local_e8 = *(uint *)(param_8 + 0xc);" (assignment_expression "local_e8 = *(uint *)(param_8 + 0xc)" identifier = (pointer_expression "*(uint *)(param_8 + 0xc)" * (cast_expression "(uint *)(param_8 + 0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 0xc)" ( (binary_expression "param_8 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "uVar34 = *(ulong *)(param_4 + 0x20);" (assignment_expression "uVar34 = *(ulong *)(param_4 + 0x20)" identifier = (pointer_expression "*(ulong *)(param_4 + 0x20)" * (cast_expression "(ulong *)(param_4 + 0x20)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (uVar34 != 0) goto LAB_002c6275;" if (parenthesized_expression "(uVar34 != 0)" ( (binary_expression "uVar34 != 0" identifier != number_literal) )) (goto_statement "goto LAB_002c6275;" goto statement_identifier ;)) (goto_statement "goto LAB_002c638e;" goto statement_identifier ;)) (case_statement "case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");" case number_literal : (labeled_statement "switchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");" statement_identifier : (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2e62,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;))) (case_statement "case 4:" case number_literal :) (case_statement "case 100:" case number_literal :) (case_statement "case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);" (assignment_expression "bVar51 = (bool)((!bVar49 || !bVar50) & local_e3)" identifier = (cast_expression "(bool)((!bVar49 || !bVar50) & local_e3)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "((!bVar49 || !bVar50) & local_e3)" ( (binary_expression "(!bVar49 || !bVar50) & local_e3" (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) & identifier) )))) ;) (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;" (assignment_expression "uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" identifier = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) (goto_statement "goto LAB_002c7644;" goto statement_identifier ;)) (case_statement "case 5:" case number_literal :) (case_statement "case 0x68:" case number_literal :) (case_statement "case 0x86:\n        goto switchD_002c4f87_caseD_5;" case number_literal : (goto_statement "goto switchD_002c4f87_caseD_5;" goto statement_identifier ;)) (case_statement "case 6:" case number_literal :) (case_statement "case 0x69:" case number_literal :) (case_statement "case 0x87:" case number_literal :) (case_statement "case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "local_130 = (uint)*param_10;" (assignment_expression "local_130 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;" (assignment_expression "uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8" identifier = (binary_expression "local_130 >> 0x18 | (local_130 & 0xff0000) >> 8" (binary_expression "local_130 >> 0x18" identifier >> number_literal) | (binary_expression "(local_130 & 0xff0000) >> 8" (parenthesized_expression "(local_130 & 0xff0000)" ( (binary_expression "local_130 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" identifier = identifier) ;) (labeled_statement "LAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }" statement_identifier : (if_statement "if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }" if (parenthesized_expression "(param_3 == 9)" ( (binary_expression "param_3 == 9" identifier == number_literal) )) (compound_statement "{\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }" { (expression_statement "local_108 = DAT_0067db40;" (assignment_expression "local_108 = DAT_0067db40" identifier = identifier) ;) (if_statement "if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }" if (parenthesized_expression "((undefined8 **)DAT_0067db40 != &DAT_0067db40)" ( (binary_expression "(undefined8 **)DAT_0067db40 != &DAT_0067db40" (cast_expression "(undefined8 **)DAT_0067db40" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) != (pointer_expression "&DAT_0067db40" & identifier)) )) (compound_statement "{\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }" { (do_statement "do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);" do (compound_statement "{\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            }" { (if_statement "if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }" if (parenthesized_expression "(uVar7 == *(uint *)(local_108 + 6))" ( (binary_expression "uVar7 == *(uint *)(local_108 + 6)" identifier == (pointer_expression "*(uint *)(local_108 + 6)" * (cast_expression "(uint *)(local_108 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_108 + 6)" ( (binary_expression "local_108 + 6" identifier + number_literal) ))))) )) (compound_statement "{\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }" { (expression_statement "uVar18 = *(undefined4 *)((long)local_108 + 0x2c);" (assignment_expression "uVar18 = *(undefined4 *)((long)local_108 + 0x2c)" identifier = (pointer_expression "*(undefined4 *)((long)local_108 + 0x2c)" * (cast_expression "(undefined4 *)((long)local_108 + 0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)local_108 + 0x2c)" ( (binary_expression "(long)local_108 + 0x2c" (cast_expression "(long)local_108" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (expression_statement "cVar14 = FUN_0028cc00(uVar18,uVar17);" (assignment_expression "cVar14 = FUN_0028cc00(uVar18,uVar17)" identifier = (call_expression "FUN_0028cc00(uVar18,uVar17)" identifier (argument_list "(uVar18,uVar17)" ( identifier , identifier )))) ;) (if_statement "if (cVar14 == '\0') goto LAB_002c7bc0;" if (parenthesized_expression "(cVar14 == '\0')" ( (binary_expression "cVar14 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c7bc0;" goto statement_identifier ;)) (expression_statement "uVar21 = local_108[2];" (assignment_expression "uVar21 = local_108[2]" identifier = (subscript_expression "local_108[2]" identifier [ number_literal ])) ;) (expression_statement "uVar22 = local_108[4];" (assignment_expression "uVar22 = local_108[4]" identifier = (subscript_expression "local_108[4]" identifier [ number_literal ])) ;) (expression_statement "uVar2 = *(undefined4 *)(local_108 + 5);" (assignment_expression "uVar2 = *(undefined4 *)(local_108 + 5)" identifier = (pointer_expression "*(undefined4 *)(local_108 + 5)" * (cast_expression "(undefined4 *)(local_108 + 5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_108 + 5)" ( (binary_expression "local_108 + 5" identifier + number_literal) ))))) ;) (expression_statement "uVar43 = local_108[3];" (assignment_expression "uVar43 = local_108[3]" identifier = (subscript_expression "local_108[3]" identifier [ number_literal ])) ;) (expression_statement "uVar1 = *(undefined4 *)(local_108 + 7);" (assignment_expression "uVar1 = *(undefined4 *)(local_108 + 7)" identifier = (pointer_expression "*(undefined4 *)(local_108 + 7)" * (cast_expression "(undefined4 *)(local_108 + 7)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_108 + 7)" ( (binary_expression "local_108 + 7" identifier + number_literal) ))))) ;) (expression_statement "FUN_00296ff0(uVar21,uVar18);" (call_expression "FUN_00296ff0(uVar21,uVar18)" identifier (argument_list "(uVar21,uVar18)" ( identifier , identifier ))) ;) (expression_statement "uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);" (assignment_expression "uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1)" identifier = (call_expression "FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1)" identifier (argument_list "(uVar21,uVar43,uVar22,uVar2,uVar1)" ( identifier , identifier , identifier , identifier , identifier )))) ;) (expression_statement "FUN_00293050(uVar21,uVar18,0);" (call_expression "FUN_00293050(uVar21,uVar18,0)" identifier (argument_list "(uVar21,uVar18,0)" ( identifier , identifier , number_literal ))) ;) (if_statement "if (uVar16 == 1) goto LAB_002c5940;" if (parenthesized_expression "(uVar16 == 1)" ( (binary_expression "uVar16 == 1" identifier == number_literal) )) (goto_statement "goto LAB_002c5940;" goto statement_identifier ;)) (expression_statement "puVar40 = (undefined8 *)*local_108;" (assignment_expression "puVar40 = (undefined8 *)*local_108" identifier = (cast_expression "(undefined8 *)*local_108" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_108" * identifier))) ;) (expression_statement "_DAT_0067db50 = _DAT_0067db50 + -1;" (assignment_expression "_DAT_0067db50 = _DAT_0067db50 + -1" identifier = (binary_expression "_DAT_0067db50 + -1" identifier + number_literal)) ;) (expression_statement "FUN_004a1200(local_108);" (call_expression "FUN_004a1200(local_108)" identifier (argument_list "(local_108)" ( identifier ))) ;) (expression_statement "FUN_0049e340(local_108);" (call_expression "FUN_0049e340(local_108)" identifier (argument_list "(local_108)" ( identifier ))) ;) (expression_statement "local_108 = puVar40;" (assignment_expression "local_108 = puVar40" identifier = identifier) ;) }) (else_clause "else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }" else (compound_statement "{\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }" { (labeled_statement "LAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;" statement_identifier : (expression_statement "local_108 = (undefined8 *)*local_108;" (assignment_expression "local_108 = (undefined8 *)*local_108" identifier = (cast_expression "(undefined8 *)*local_108" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_108" * identifier))) ;)) }))) }) while (parenthesized_expression "((undefined8 **)local_108 != &DAT_0067db40)" ( (binary_expression "(undefined8 **)local_108 != &DAT_0067db40" (cast_expression "(undefined8 **)local_108" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) != (pointer_expression "&DAT_0067db40" & identifier)) )) ;) })) (expression_statement "local_108 = DAT_0067db20;" (assignment_expression "local_108 = DAT_0067db20" identifier = identifier) ;) (if_statement "if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }" if (parenthesized_expression "((undefined8 **)DAT_0067db20 != &DAT_0067db20)" ( (binary_expression "(undefined8 **)DAT_0067db20 != &DAT_0067db20" (cast_expression "(undefined8 **)DAT_0067db20" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) != (pointer_expression "&DAT_0067db20" & identifier)) )) (compound_statement "{\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }" { (do_statement "do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);" do (compound_statement "{\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            }" { (if_statement "if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }" if (parenthesized_expression "(uVar7 == *(uint *)(local_108 + 6))" ( (binary_expression "uVar7 == *(uint *)(local_108 + 6)" identifier == (pointer_expression "*(uint *)(local_108 + 6)" * (cast_expression "(uint *)(local_108 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_108 + 6)" ( (binary_expression "local_108 + 6" identifier + number_literal) ))))) )) (compound_statement "{\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }" { (expression_statement "uVar18 = *(undefined4 *)((long)local_108 + 0x2c);" (assignment_expression "uVar18 = *(undefined4 *)((long)local_108 + 0x2c)" identifier = (pointer_expression "*(undefined4 *)((long)local_108 + 0x2c)" * (cast_expression "(undefined4 *)((long)local_108 + 0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)local_108 + 0x2c)" ( (binary_expression "(long)local_108 + 0x2c" (cast_expression "(long)local_108" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (expression_statement "cVar14 = FUN_0028cc00(uVar18,uVar17);" (assignment_expression "cVar14 = FUN_0028cc00(uVar18,uVar17)" identifier = (call_expression "FUN_0028cc00(uVar18,uVar17)" identifier (argument_list "(uVar18,uVar17)" ( identifier , identifier )))) ;) (if_statement "if (cVar14 == '\0') goto LAB_002c7d70;" if (parenthesized_expression "(cVar14 == '\0')" ( (binary_expression "cVar14 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c7d70;" goto statement_identifier ;)) (expression_statement "uVar21 = local_108[2];" (assignment_expression "uVar21 = local_108[2]" identifier = (subscript_expression "local_108[2]" identifier [ number_literal ])) ;) (expression_statement "uVar2 = *(undefined4 *)(local_108 + 5);" (assignment_expression "uVar2 = *(undefined4 *)(local_108 + 5)" identifier = (pointer_expression "*(undefined4 *)(local_108 + 5)" * (cast_expression "(undefined4 *)(local_108 + 5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_108 + 5)" ( (binary_expression "local_108 + 5" identifier + number_literal) ))))) ;) (expression_statement "uVar22 = local_108[3];" (assignment_expression "uVar22 = local_108[3]" identifier = (subscript_expression "local_108[3]" identifier [ number_literal ])) ;) (expression_statement "uVar43 = local_108[4];" (assignment_expression "uVar43 = local_108[4]" identifier = (subscript_expression "local_108[4]" identifier [ number_literal ])) ;) (expression_statement "uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);" (assignment_expression "uVar34 = (ulong)*(byte *)((long)local_108 + 0x34)" identifier = (binary_expression "(ulong)*(byte *)((long)local_108 + 0x34)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(byte *)((long)local_108 + 0x34)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)local_108 + 0x34)" ( (binary_expression "(long)local_108 + 0x34" (cast_expression "(long)local_108" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (expression_statement "FUN_00296ff0(uVar21,uVar18);" (call_expression "FUN_00296ff0(uVar21,uVar18)" identifier (argument_list "(uVar21,uVar18)" ( identifier , identifier ))) ;) (expression_statement "uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);" (assignment_expression "uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1)" identifier = (call_expression "FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1)" identifier (argument_list "(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1)" ( identifier , identifier , identifier , identifier , (binary_expression "uVar34 & 0xff" identifier & number_literal) , identifier , identifier , identifier , identifier )))) ;) (expression_statement "FUN_00293050(uVar21,uVar18,0);" (call_expression "FUN_00293050(uVar21,uVar18,0)" identifier (argument_list "(uVar21,uVar18,0)" ( identifier , identifier , number_literal ))) ;) (if_statement "if (uVar16 == 1) goto LAB_002c5940;" if (parenthesized_expression "(uVar16 == 1)" ( (binary_expression "uVar16 == 1" identifier == number_literal) )) (goto_statement "goto LAB_002c5940;" goto statement_identifier ;)) (expression_statement "puVar40 = (undefined8 *)*local_108;" (assignment_expression "puVar40 = (undefined8 *)*local_108" identifier = (cast_expression "(undefined8 *)*local_108" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_108" * identifier))) ;) (expression_statement "_DAT_0067db30 = _DAT_0067db30 + -1;" (assignment_expression "_DAT_0067db30 = _DAT_0067db30 + -1" identifier = (binary_expression "_DAT_0067db30 + -1" identifier + number_literal)) ;) (expression_statement "FUN_004a1200(local_108);" (call_expression "FUN_004a1200(local_108)" identifier (argument_list "(local_108)" ( identifier ))) ;) (expression_statement "FUN_0049e340(local_108);" (call_expression "FUN_0049e340(local_108)" identifier (argument_list "(local_108)" ( identifier ))) ;) (expression_statement "local_108 = puVar40;" (assignment_expression "local_108 = puVar40" identifier = identifier) ;) }) (else_clause "else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }" else (compound_statement "{\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }" { (labeled_statement "LAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;" statement_identifier : (expression_statement "local_108 = (undefined8 *)*local_108;" (assignment_expression "local_108 = (undefined8 *)*local_108" identifier = (cast_expression "(undefined8 *)*local_108" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_108" * identifier))) ;)) }))) }) while (parenthesized_expression "((undefined8 **)local_108 != &DAT_0067db20)" ( (binary_expression "(undefined8 **)local_108 != &DAT_0067db20" (cast_expression "(undefined8 **)local_108" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) != (pointer_expression "&DAT_0067db20" & identifier)) )) ;) })) }))) (if_statement "if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }" if (parenthesized_expression "(cVar12 == '\0')" ( (binary_expression "cVar12 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }" { (expression_statement "uVar19 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "uVar19 = FUN_001d7270(param_9,plVar3,uVar19)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" identifier (argument_list "(param_9,plVar3,uVar19)" ( identifier , identifier , identifier )))) ;) }) (else_clause "else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }" else (compound_statement "{\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }" { (expression_statement "lVar30 = *(long *)(param_4 + 0x28);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x28)" identifier = (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" if (parenthesized_expression "(uVar17 == 0x69)" ( (binary_expression "uVar17 == 0x69" identifier == number_literal) )) (compound_statement "{\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }" { (if_statement "if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n              iVar38 = 0;\n            }" { (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) }) (else_clause "else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" else (compound_statement "{\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" { (expression_statement "iVar38 = *(int *)(lVar30 + 0x40);" (assignment_expression "iVar38 = *(int *)(lVar30 + 0x40)" identifier = (pointer_expression "*(int *)(lVar30 + 0x40)" * (cast_expression "(int *)(lVar30 + 0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x40)" ( (binary_expression "lVar30 + 0x40" identifier + number_literal) ))))) ;) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" if (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" ( (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" ( (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" ( (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" * (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" ( (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(plVar3[0x6e] != 0)" ( (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" { (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier = (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier + (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" * (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x6e] + 0x10c)" ( (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) + number_literal) )))))) ;) })) }))) (expression_statement "iVar38 = iVar38 - (param_11 & 0xfffffffc);" (assignment_expression "iVar38 = iVar38 - (param_11 & 0xfffffffc)" identifier = (binary_expression "iVar38 - (param_11 & 0xfffffffc)" identifier - (parenthesized_expression "(param_11 & 0xfffffffc)" ( (binary_expression "param_11 & 0xfffffffc" identifier & number_literal) )))) ;) }) (else_clause "else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" else (if_statement "if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" if (parenthesized_expression "((uVar17 == 0x87) || (uVar17 == 0x9d))" ( (binary_expression "(uVar17 == 0x87) || (uVar17 == 0x9d)" (parenthesized_expression "(uVar17 == 0x87)" ( (binary_expression "uVar17 == 0x87" identifier == number_literal) )) || (parenthesized_expression "(uVar17 == 0x9d)" ( (binary_expression "uVar17 == 0x9d" identifier == number_literal) ))) )) (compound_statement "{\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }" { (if_statement "if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n              iVar38 = 0;\n            }" { (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) }) (else_clause "else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" else (compound_statement "{\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" { (expression_statement "iVar38 = *(int *)(lVar30 + 0x40);" (assignment_expression "iVar38 = *(int *)(lVar30 + 0x40)" identifier = (pointer_expression "*(int *)(lVar30 + 0x40)" * (cast_expression "(int *)(lVar30 + 0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x40)" ( (binary_expression "lVar30 + 0x40" identifier + number_literal) ))))) ;) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" if (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" ( (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" ( (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" ( (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" * (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" ( (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(plVar3[0x6e] != 0)" ( (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" { (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier = (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier + (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" * (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x6e] + 0x10c)" ( (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) + number_literal) )))))) ;) })) }))) (expression_statement "iVar38 = (iVar38 - param_11) + 3;" (assignment_expression "iVar38 = (iVar38 - param_11) + 3" identifier = (binary_expression "(iVar38 - param_11) + 3" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) ;) }) (else_clause "else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" else (compound_statement "{\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" { (if_statement "if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n              iVar38 = 0;\n            }" { (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) }) (else_clause "else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" else (compound_statement "{\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" { (expression_statement "iVar38 = *(int *)(lVar30 + 0x40);" (assignment_expression "iVar38 = *(int *)(lVar30 + 0x40)" identifier = (pointer_expression "*(int *)(lVar30 + 0x40)" * (cast_expression "(int *)(lVar30 + 0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x40)" ( (binary_expression "lVar30 + 0x40" identifier + number_literal) ))))) ;) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" if (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" ( (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" ( (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" ( (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" * (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" ( (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(plVar3[0x6e] != 0)" ( (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" { (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier = (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier + (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" * (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x6e] + 0x10c)" ( (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) + number_literal) )))))) ;) })) }))) (expression_statement "iVar38 = (iVar38 - param_11) + 4;" (assignment_expression "iVar38 = (iVar38 - param_11) + 4" identifier = (binary_expression "(iVar38 - param_11) + 4" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) ;) }))))) (expression_statement "uVar19 = iVar38 + uVar19;" (assignment_expression "uVar19 = iVar38 + uVar19" identifier = (binary_expression "iVar38 + uVar19" identifier + identifier)) ;) }))) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;" (assignment_expression "*(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "(((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130" (parenthesized_expression "(((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18)" ( (binary_expression "((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18" (binary_expression "((uVar19 ^ uVar45) & 0xff00) << 8" (parenthesized_expression "((uVar19 ^ uVar45) & 0xff00)" ( (binary_expression "(uVar19 ^ uVar45) & 0xff00" (parenthesized_expression "(uVar19 ^ uVar45)" ( (binary_expression "uVar19 ^ uVar45" identifier ^ identifier) )) & number_literal) )) << number_literal) | (binary_expression "(uVar19 ^ uVar45) << 0x18" (parenthesized_expression "(uVar19 ^ uVar45)" ( (binary_expression "uVar19 ^ uVar45" identifier ^ identifier) )) << number_literal)) )) ^ identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 7:" case number_literal :) (case_statement "case 8:" case number_literal :) (case_statement "case 0x65:" case number_literal :) (case_statement "case 0x88:" case number_literal :) (case_statement "case 0x89:" case number_literal :) (case_statement "case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;" case number_literal : (expression_statement "lVar30 = *(long *)(param_4 + 0x28);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x28)" identifier = (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }" { (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);" statement_identifier : (expression_statement "iVar38 = *(int *)(lVar30 + 0x40);" (assignment_expression "iVar38 = *(int *)(lVar30 + 0x40)" identifier = (pointer_expression "*(int *)(lVar30 + 0x40)" * (cast_expression "(int *)(lVar30 + 0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x40)" ( (binary_expression "lVar30 + 0x40" identifier + number_literal) ))))) ;)) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" if (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" ( (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" ( (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" ( (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" * (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" ( (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(plVar3[0x6e] != 0)" ( (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" { (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier = (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier + (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" * (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x6e] + 0x10c)" ( (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) + number_literal) )))))) ;) })) (goto_statement "goto LAB_002c7297;" goto statement_identifier ;) })) (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;" (assignment_expression "uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" identifier = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" identifier = identifier) ;) (labeled_statement "LAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);" statement_identifier : (expression_statement "iVar20 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "iVar20 = FUN_001d7270(param_9,plVar3,uVar36)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" identifier (argument_list "(param_9,plVar3,uVar36)" ( identifier , identifier , identifier )))) ;)) (expression_statement "uVar19 = iVar20 - iVar38;" (assignment_expression "uVar19 = iVar20 - iVar38" identifier = (binary_expression "iVar20 - iVar38" identifier - identifier)) ;) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }" { (expression_statement "uVar19 = uVar19 + (int)plVar3[0x6d];" (assignment_expression "uVar19 = uVar19 + (int)plVar3[0x6d]" identifier = (binary_expression "uVar19 + (int)plVar3[0x6d]" identifier + (cast_expression "(int)plVar3[0x6d]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar3[0x6d]" identifier [ number_literal ])))) ;) })) (expression_statement "uVar36 = (uVar19 ^ uVar45) & 0xffff;" (assignment_expression "uVar36 = (uVar19 ^ uVar45) & 0xffff" identifier = (binary_expression "(uVar19 ^ uVar45) & 0xffff" (parenthesized_expression "(uVar19 ^ uVar45)" ( (binary_expression "uVar19 ^ uVar45" identifier ^ identifier) )) & number_literal)) ;) (if_statement "if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }" if (parenthesized_expression "(uVar17 == 0xac)" ( (binary_expression "uVar17 == 0xac" identifier == number_literal) )) (compound_statement "{\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }" { (expression_statement "uVar36 = (uVar19 ^ uVar45) & 0x7f;" (assignment_expression "uVar36 = (uVar19 ^ uVar45) & 0x7f" identifier = (binary_expression "(uVar19 ^ uVar45) & 0x7f" (parenthesized_expression "(uVar19 ^ uVar45)" ( (binary_expression "uVar19 ^ uVar45" identifier ^ identifier) )) & number_literal)) ;) })) (expression_statement "uVar36 = uVar45 ^ uVar36;" (assignment_expression "uVar36 = uVar45 ^ uVar36" identifier = (binary_expression "uVar45 ^ uVar36" identifier ^ identifier)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "*(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;" (assignment_expression "*(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar45 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) (if_statement "if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }" if (parenthesized_expression "(0xffff < uVar19 + 0x8000)" ( (binary_expression "0xffff < uVar19 + 0x8000" number_literal < (binary_expression "uVar19 + 0x8000" identifier + number_literal)) )) (compound_statement "{\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }" { (expression_statement "uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );" (assignment_expression "uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          )" identifier = (call_expression "gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          )" identifier (argument_list "(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          )" ( (string_literal ""small-data section exceeds 64KB; lower small-data size limit (see option -G)"" " string_content ") )))) ;) (expression_statement "FUN_0034a750(uVar21);" (call_expression "FUN_0034a750(uVar21)" identifier (argument_list "(uVar21)" ( identifier ))) ;) (goto_statement "goto LAB_002c7359;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c5c87;" goto statement_identifier ;)) (case_statement "case 9:" case number_literal :) (case_statement "case 0x66:" case number_literal :) (case_statement "case 0x8a:\n        goto switchD_002c4f87_caseD_9;" case number_literal : (goto_statement "goto switchD_002c4f87_caseD_9;" goto statement_identifier ;)) (case_statement "case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6a55:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal))) ;) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar36 * 4;" (assignment_expression "uVar19 = uVar36 * 4" identifier = (binary_expression "uVar36 * 4" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0x3fffc;" (assignment_expression "uVar45 = uVar19 & 0x3fffc" identifier = (binary_expression "uVar19 & 0x3fffc" identifier & number_literal)) ;) (expression_statement "uVar16 = uVar45 - 0x40000;" (assignment_expression "uVar16 = uVar45 - 0x40000" identifier = (binary_expression "uVar45 - 0x40000" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x20000) == 0)" ( (binary_expression "(uVar19 & 0x20000) == 0" (parenthesized_expression "(uVar19 & 0x20000)" ( (binary_expression "uVar19 & 0x20000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar16 = uVar45;\n          }" { (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11 >> 2;" (assignment_expression "uVar19 = iVar38 - param_11 >> 2" identifier = (binary_expression "iVar38 - param_11 >> 2" (binary_expression "iVar38 - param_11" identifier - identifier) >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" identifier = (binary_expression "uVar36 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;" (assignment_expression "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar16 = 3;" (assignment_expression "uVar16 = 3" identifier = number_literal) ;) (if_statement "if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }" if (parenthesized_expression "((uVar34 & 3) == 0)" ( (binary_expression "(uVar34 & 3) == 0" (parenthesized_expression "(uVar34 & 3)" ( (binary_expression "uVar34 & 3" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }" { (expression_statement "uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);" (assignment_expression "uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000)" identifier = (call_expression "(uint)(0x3ffff < (iVar38 - param_11) + 0x20000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0x3ffff < (iVar38 - param_11) + 0x20000)" ( (binary_expression "0x3ffff < (iVar38 - param_11) + 0x20000" number_literal < (binary_expression "(iVar38 - param_11) + 0x20000" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) )))) ;) })) (break_statement "break;" break ;)) (case_statement "case 0xb:" case number_literal :) (case_statement "case 0x67:" case number_literal :) (case_statement "case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }" statement_identifier : (if_statement "if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }" { (labeled_statement "LAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");" statement_identifier : (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2f3d,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;)) }))) (if_statement "if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }" if (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" ( (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }" { (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_002c82dc;" goto statement_identifier ;) })) (expression_statement "local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3)" identifier = (call_expression "FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3)" identifier (argument_list "(*(long *)(param_4 + 0x20),param_8,0,plVar3)" ( (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) , identifier , number_literal , identifier )))) ;) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }" { (labeled_statement "LAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);" statement_identifier : (expression_statement "uVar36 = FUN_00292520(lVar30,local_e8,plVar3);" (assignment_expression "uVar36 = FUN_00292520(lVar30,local_e8,plVar3)" identifier = (call_expression "FUN_00292520(lVar30,local_e8,plVar3)" identifier (argument_list "(lVar30,local_e8,plVar3)" ( identifier , identifier , identifier )))) ;)) (if_statement "if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;" if (parenthesized_expression "(*(char *)((long)param_1 + 4) != '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) != '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c67b0;" goto statement_identifier ;)) (expression_statement "uVar16 = (uint)*param_10;" (assignment_expression "uVar16 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;" (assignment_expression "uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36" identifier = (binary_expression "(uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36" (parenthesized_expression "(uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8)" ( (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" ( (binary_expression "uVar16 & 0xff0000" identifier & number_literal) )) >> number_literal)) )) ^ identifier)) ;) (expression_statement "*(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;" (assignment_expression "*(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16" (parenthesized_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" ( (binary_expression "(uVar19 & 0xff00) << 8 | uVar19 << 0x18" (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" ( (binary_expression "uVar19 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar19 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (expression_statement "uVar16 = (uint)(0xffff < uVar36 + 0x8000);" (assignment_expression "uVar16 = (uint)(0xffff < uVar36 + 0x8000)" identifier = (call_expression "(uint)(0xffff < uVar36 + 0x8000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffff < uVar36 + 0x8000)" ( (binary_expression "0xffff < uVar36 + 0x8000" number_literal < (binary_expression "uVar36 + 0x8000" identifier + number_literal)) )))) ;) (goto_statement "goto LAB_002c624f;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c81f0;" goto statement_identifier ;)) (case_statement "case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" statement_identifier : (if_statement "if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" if (parenthesized_expression "(*(long *)(param_4 + 0x28) == 0)" ( (binary_expression "*(long *)(param_4 + 0x28) == 0" (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          iVar38 = 0;\n        }" { (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" identifier = number_literal) ;) }) (else_clause "else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" else (compound_statement "{\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" { (expression_statement "iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);" (assignment_expression "iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40)" identifier = (pointer_expression "*(int *)(*(long *)(param_4 + 0x28) + 0x40)" * (cast_expression "(int *)(*(long *)(param_4 + 0x28) + 0x40)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x28) + 0x40)" ( (binary_expression "*(long *)(param_4 + 0x28) + 0x40" (pointer_expression "*(long *)(param_4 + 0x28)" * (cast_expression "(long *)(param_4 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x28)" ( (binary_expression "param_4 + 0x28" identifier + number_literal) )))) + number_literal) ))))) ;) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" if (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" ( (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" ( (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" ( (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" * (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" ( (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(plVar3[0x6e] != 0)" ( (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" { (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier = (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" identifier + (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" * (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(plVar3[0x6e] + 0x10c)" ( (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" identifier [ number_literal ]) + number_literal) )))))) ;) })) })))) (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;" (assignment_expression "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (if_statement "if (bVar48 == false) {\n          uVar17 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar17 = local_c8;\n        }" { (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar20 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "iVar20 = FUN_001d7270(param_9,plVar3,uVar17)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" identifier (argument_list "(param_9,plVar3,uVar17)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;" (assignment_expression "uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38" identifier = (binary_expression "(iVar20 + (int)plVar3[0x6d]) - iVar38" (parenthesized_expression "(iVar20 + (int)plVar3[0x6d])" ( (binary_expression "iVar20 + (int)plVar3[0x6d]" identifier + (cast_expression "(int)plVar3[0x6d]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "plVar3[0x6d]" identifier [ number_literal ]))) )) - identifier)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (labeled_statement "LAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;" statement_identifier : (expression_statement "uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;" (assignment_expression "uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18" identifier = (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18" (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8" (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8" (binary_expression "uVar19 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" ( (binary_expression "uVar19 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" ( (binary_expression "uVar19 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar19 << 0x18" identifier << number_literal))) ;)) (expression_statement "puVar37 = param_10;" (assignment_expression "puVar37 = param_10" identifier = identifier) ;) (goto_statement "goto LAB_002c5c85;" goto statement_identifier ;)) (case_statement "case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);" statement_identifier : (expression_statement "cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);" (assignment_expression "cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4)" identifier = (call_expression "FUN_0029fc10(param_8,0x12,param_5,param_4)" identifier (argument_list "(param_8,0x12,param_5,param_4)" ( identifier , number_literal , identifier , identifier )))) ;)) (if_statement "if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }" if (parenthesized_expression "(cVar13 != '\0')" ( (binary_expression "cVar13 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }" { (expression_statement "uVar34 = (ulong)local_c8;" (assignment_expression "uVar34 = (ulong)local_c8" identifier = (cast_expression "(ulong)local_c8" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "cVar13 = *(char *)((long)param_1 + 4);" (assignment_expression "cVar13 = *(char *)((long)param_1 + 4)" identifier = (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (if_statement "if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }" { (expression_statement "uVar34 = *param_10;" (assignment_expression "uVar34 = *param_10" identifier = (pointer_expression "*param_10" * identifier)) ;) (expression_statement "uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;" (assignment_expression "uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38" identifier = (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28" (binary_expression "uVar34 >> 0x38" identifier >> number_literal) | (binary_expression "(uVar34 & 0xff000000000000) >> 0x28" (parenthesized_expression "(uVar34 & 0xff000000000000)" ( (binary_expression "uVar34 & 0xff000000000000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar34 & 0xff0000000000) >> 0x18" (parenthesized_expression "(uVar34 & 0xff0000000000)" ( (binary_expression "uVar34 & 0xff0000000000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar34 & 0xff00000000) >> 8" (parenthesized_expression "(uVar34 & 0xff00000000)" ( (binary_expression "uVar34 & 0xff00000000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar34 & 0xff000000) << 8" (parenthesized_expression "(uVar34 & 0xff000000)" ( (binary_expression "uVar34 & 0xff000000" identifier & number_literal) )) << number_literal)) | (binary_expression "(uVar34 & 0xff0000) << 0x18" (parenthesized_expression "(uVar34 & 0xff0000)" ( (binary_expression "uVar34 & 0xff0000" identifier & number_literal) )) << number_literal)) | (binary_expression "(uVar34 & 0xff00) << 0x28" (parenthesized_expression "(uVar34 & 0xff00)" ( (binary_expression "uVar34 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar34 << 0x38" identifier << number_literal))) ;) })) (goto_statement "goto LAB_002c6b22;" goto statement_identifier ;) })) (break_statement "break;" break ;)) (case_statement "case 0x13:" case number_literal :) (case_statement "case 0x91:" case number_literal :) (case_statement "case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }" if (parenthesized_expression "(param_8 != (undefined8 *)0x0)" ( (binary_expression "param_8 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }" { (if_statement "if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }" { (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3)" identifier = (call_expression "FUN_0029b910(lVar30,param_8,0,plVar3)" identifier (argument_list "(lVar30,param_8,0,plVar3)" ( identifier , identifier , number_literal , identifier )))) ;) (goto_statement "goto LAB_002c6043;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c827b;" goto statement_identifier ;) })) (if_statement "if (lVar30 == 0) goto LAB_002c8364;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c8364;" goto statement_identifier ;)) (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" identifier = (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" ( (pointer_expression "**(code **)(*plVar3 + 0x160)" * (pointer_expression "*(code **)(*plVar3 + 0x160)" * (cast_expression "(code **)(*plVar3 + 0x160)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*plVar3 + 0x160)" ( (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" * identifier) + number_literal) ))))) )) (argument_list "(plVar3,uVar7,0,(long)(int)local_c8)" ( identifier , identifier , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (labeled_statement "LAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;" statement_identifier : (if_statement "if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;" if (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" ( (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_002c8276;" goto statement_identifier ;))) (expression_statement "uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);" (assignment_expression "uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" identifier = (call_expression "FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" identifier (argument_list "(*(long *)(param_4 + 0x20),local_e8,plVar3)" ( (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) , identifier , identifier )))) ;) (if_statement "if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }" if (parenthesized_expression "(uVar17 == 0xf9)" ( (binary_expression "uVar17 == 0xf9" identifier == number_literal) )) (compound_statement "{\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }" { (expression_statement "puVar37 = param_1;" (assignment_expression "puVar37 = param_1" identifier = identifier) ;) (if_statement "if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;" if (parenthesized_expression "(*(char *)((long)param_1 + 4) == '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) == '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c5ccb;" goto statement_identifier ;)) (goto_statement "goto LAB_002c5c85;" goto statement_identifier ;) })) (if_statement "if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;" if (parenthesized_expression "(*(char *)((long)param_1 + 4) != '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) != '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (goto_statement "goto LAB_002c6098;" goto statement_identifier ;)) (case_statement "case 0x14:" case number_literal :) (case_statement "case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar16 = local_c8;\n        }" { (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) })) (expression_statement "FUN_001d7270(param_9,plVar3,uVar16);" (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier ))) ;) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }" { (if_statement "if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }" if (parenthesized_expression "(*(long *)(lVar30 + 0xd0) == 0)" ( (binary_expression "*(long *)(lVar30 + 0xd0) == 0" (pointer_expression "*(long *)(lVar30 + 0xd0)" * (cast_expression "(long *)(lVar30 + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0xd0)" ( (binary_expression "lVar30 + 0xd0" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n            lVar30 = *(long *)(lVar30 + 200);\n          }" { (expression_statement "lVar30 = *(long *)(lVar30 + 200);" (assignment_expression "lVar30 = *(long *)(lVar30 + 200)" identifier = (pointer_expression "*(long *)(lVar30 + 200)" * (cast_expression "(long *)(lVar30 + 200)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 200)" ( (binary_expression "lVar30 + 200" identifier + number_literal) ))))) ;) }) (else_clause "else {\n            lVar30 = plVar3[0x6e];\n          }" else (compound_statement "{\n            lVar30 = plVar3[0x6e];\n          }" { (expression_statement "lVar30 = plVar3[0x6e];" (assignment_expression "lVar30 = plVar3[0x6e]" identifier = (subscript_expression "plVar3[0x6e]" identifier [ number_literal ])) ;) }))) (if_statement "if (lVar30 == 0) goto LAB_002c8285;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c8285;" goto statement_identifier ;)) (expression_statement "uVar18 = FUN_002c47d0();" (assignment_expression "uVar18 = FUN_002c47d0()" identifier = (call_expression "FUN_002c47d0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;" if (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" ( (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_002c8280;" goto statement_identifier ;)) (expression_statement "uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);" (assignment_expression "uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3)" identifier = (call_expression "FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3)" identifier (argument_list "(*(long *)(param_4 + 0x20),uVar18,plVar3)" ( (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) , identifier , identifier )))) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" identifier = (binary_expression "uVar36 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;" (assignment_expression "uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" identifier = (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (goto_statement "goto LAB_002c60ab;" goto statement_identifier ;) })) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_002c81a2:\n        FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (goto_statement "goto LAB_002c81a7;" goto statement_identifier ;)) (case_statement "case 0x15:" case number_literal :) (case_statement "case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar19 = uVar36;" (assignment_expression "uVar19 = uVar36" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\n          uVar19 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar19 = local_c8;\n        }" { (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" identifier = identifier) ;) })) (if_statement "if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }" if (parenthesized_expression "(local_e2 != 0)" ( (binary_expression "local_e2 != 0" identifier != number_literal) )) (compound_statement "{\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }" { (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar19)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" identifier (argument_list "(param_9,plVar3,uVar19)" ( identifier , identifier , identifier )))) ;) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }" { (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) (goto_statement "goto LAB_002c6ed9;" goto statement_identifier ;) })) (if_statement "if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }" if (parenthesized_expression "(*(long *)(lVar30 + 0xd0) == 0)" ( (binary_expression "*(long *)(lVar30 + 0xd0) == 0" (pointer_expression "*(long *)(lVar30 + 0xd0)" * (cast_expression "(long *)(lVar30 + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0xd0)" ( (binary_expression "lVar30 + 0xd0" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n            lVar30 = *(long *)(lVar30 + 200);\n          }" { (expression_statement "lVar30 = *(long *)(lVar30 + 200);" (assignment_expression "lVar30 = *(long *)(lVar30 + 200)" identifier = (pointer_expression "*(long *)(lVar30 + 200)" * (cast_expression "(long *)(lVar30 + 200)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 200)" ( (binary_expression "lVar30 + 200" identifier + number_literal) ))))) ;) }) (else_clause "else {\n            lVar30 = plVar3[0x6e];\n          }" else (compound_statement "{\n            lVar30 = plVar3[0x6e];\n          }" { (expression_statement "lVar30 = plVar3[0x6e];" (assignment_expression "lVar30 = plVar3[0x6e]" identifier = (subscript_expression "plVar3[0x6e]" identifier [ number_literal ])) ;) }))) (if_statement "if (lVar30 == 0) goto LAB_002c82c4;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c82c4;" goto statement_identifier ;)) (expression_statement "FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);" (call_expression "FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000)" identifier (argument_list "(lVar30,iVar38 + 0x8000U & 0xffff0000)" ( identifier , (binary_expression "iVar38 + 0x8000U & 0xffff0000" (binary_expression "iVar38 + 0x8000U" identifier + number_literal) & number_literal) ))) ;) (expression_statement "iVar20 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "iVar20 = FUN_001d7270(param_9,plVar3,uVar19)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" identifier (argument_list "(param_9,plVar3,uVar19)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);" (assignment_expression "uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000)" identifier = (binary_expression "iVar20 - (iVar38 + 0x8000U & 0xffff0000)" identifier - (parenthesized_expression "(iVar38 + 0x8000U & 0xffff0000)" ( (binary_expression "iVar38 + 0x8000U & 0xffff0000" (binary_expression "iVar38 + 0x8000U" identifier + number_literal) & number_literal) )))) ;) })) (if_statement "if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (compound_statement "{\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }" { (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_1 = uVar19;" (assignment_expression "*(uint *)param_1 = uVar19" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }) (else_clause "else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }" else (compound_statement "{\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }" { (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" identifier = (binary_expression "uVar36 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;" (assignment_expression "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (expression_statement "uVar16 = (uint)(0xffff < uVar19 + 0x8000);" (assignment_expression "uVar16 = (uint)(0xffff < uVar19 + 0x8000)" identifier = (call_expression "(uint)(0xffff < uVar19 + 0x8000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffff < uVar19 + 0x8000)" ( (binary_expression "0xffff < uVar19 + 0x8000" number_literal < (binary_expression "uVar19 + 0x8000" identifier + number_literal)) )))) ;) }))) (break_statement "break;" break ;)) (case_statement "case 0x16:" case number_literal :) (case_statement "case 0x1e:" case number_literal :) (case_statement "case 0x94:" case number_literal :) (case_statement "case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }" { (if_statement "if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }" { (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" identifier = (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" ( (pointer_expression "**(code **)(*plVar3 + 0x160)" * (pointer_expression "*(code **)(*plVar3 + 0x160)" * (cast_expression "(code **)(*plVar3 + 0x160)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*plVar3 + 0x160)" ( (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" * identifier) + number_literal) ))))) )) (argument_list "(plVar3,uVar7,0,(long)(int)local_c8)" ( identifier , identifier , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (goto_statement "goto LAB_002c5e6e;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c81a2;" goto statement_identifier ;) })) (if_statement "if (lVar30 == 0) goto LAB_002c8271;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c8271;" goto statement_identifier ;)) (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3)" identifier = (call_expression "FUN_0029b910(lVar30,param_8,0,plVar3)" identifier (argument_list "(lVar30,param_8,0,plVar3)" ( identifier , identifier , number_literal , identifier )))) ;) (labeled_statement "LAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;" statement_identifier : (if_statement "if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;" if (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" ( (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_002c826c;" goto statement_identifier ;))) (expression_statement "iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);" (assignment_expression "iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" identifier = (call_expression "FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" identifier (argument_list "(*(long *)(param_4 + 0x20),local_e8,plVar3)" ( (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) , identifier , identifier )))) ;) (expression_statement "uVar36 = iVar38 + 0x8000U >> 0x10;" (assignment_expression "uVar36 = iVar38 + 0x8000U >> 0x10" identifier = (binary_expression "iVar38 + 0x8000U >> 0x10" (binary_expression "iVar38 + 0x8000U" identifier + number_literal) >> number_literal)) ;) (if_statement "if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }" if (parenthesized_expression "(*(char *)((long)param_1 + 4) == '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) == '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }" { (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = (uint)*param_10;" (assignment_expression "uVar19 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);" (assignment_expression "uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8)" identifier = (binary_expression "uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8)" identifier ^ (parenthesized_expression "(uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8)" ( (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8" (binary_expression "uVar19 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" ( (binary_expression "uVar19 & 0xff0000" identifier & number_literal) )) >> number_literal)) )))) ;) (expression_statement "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;" (assignment_expression "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (goto_statement "goto LAB_002c624f;" goto statement_identifier ;) })) (labeled_statement "LAB_002c67b0:\n        *(uint *)param_1 = uVar36;" statement_identifier : (expression_statement "*(uint *)param_1 = uVar36;" (assignment_expression "*(uint *)param_1 = uVar36" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (labeled_statement "LAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }" statement_identifier : (if_statement "if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }" if (parenthesized_expression "(local_e1 != false)" ( (binary_expression "local_e1 != false" identifier != false) )) (compound_statement "{\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }" { (expression_statement "uVar34 = *(ulong *)(param_4 + 0x20);" (assignment_expression "uVar34 = *(ulong *)(param_4 + 0x20)" identifier = (pointer_expression "*(ulong *)(param_4 + 0x20)" * (cast_expression "(ulong *)(param_4 + 0x20)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }" if (parenthesized_expression "(uVar34 == 0)" ( (binary_expression "uVar34 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }" { (labeled_statement "LAB_002c638e:\n            FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "switchD_002c4f87_caseD_5:\n            bVar48 = false;" statement_identifier : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;)) (labeled_statement "switchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }" statement_identifier : (if_statement "if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }" if (parenthesized_expression "(param_3 == 4)" ( (binary_expression "param_3 == 4" identifier == number_literal) )) (compound_statement "{\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }" { (expression_statement "uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);" (assignment_expression "uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1)" identifier = (call_expression "FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1)" identifier (argument_list "(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1)" ( identifier , identifier , identifier , identifier , identifier , identifier , identifier , identifier , number_literal , identifier , (binary_expression "uVar34 & 0xff" identifier & number_literal) , identifier )))) ;) }) (else_clause "else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }" else (compound_statement "{\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }" { (if_statement "if (param_3 != 9) goto LAB_002c81f5;" if (parenthesized_expression "(param_3 != 9)" ( (binary_expression "param_3 != 9" identifier != number_literal) )) (goto_statement "goto LAB_002c81f5;" goto statement_identifier ;)) (expression_statement "lVar30 = FUN_0049cb70(0x40);" (assignment_expression "lVar30 = FUN_0049cb70(0x40)" identifier = (call_expression "FUN_0049cb70(0x40)" identifier (argument_list "(0x40)" ( number_literal )))) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(ulong **)(lVar30 + 0x10) = param_10;" (assignment_expression "*(ulong **)(lVar30 + 0x10) = param_10" (pointer_expression "*(ulong **)(lVar30 + 0x10)" * (cast_expression "(ulong **)(lVar30 + 0x10)" ( (type_descriptor "ulong **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x10)" ( (binary_expression "lVar30 + 0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(long **)(lVar30 + 0x18) = plVar3;" (assignment_expression "*(long **)(lVar30 + 0x18) = plVar3" (pointer_expression "*(long **)(lVar30 + 0x18)" * (cast_expression "(long **)(lVar30 + 0x18)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x18)" ( (binary_expression "lVar30 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(lVar30 + 0x20) = param_9;" (assignment_expression "*(uint **)(lVar30 + 0x20) = param_9" (pointer_expression "*(uint **)(lVar30 + 0x20)" * (cast_expression "(uint **)(lVar30 + 0x20)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x28) = local_c8;" (assignment_expression "*(uint *)(lVar30 + 0x28) = local_c8" (pointer_expression "*(uint *)(lVar30 + 0x28)" * (cast_expression "(uint *)(lVar30 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x28)" ( (binary_expression "lVar30 + 0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x2c) = uVar17;" (assignment_expression "*(uint *)(lVar30 + 0x2c) = uVar17" (pointer_expression "*(uint *)(lVar30 + 0x2c)" * (cast_expression "(uint *)(lVar30 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x2c)" ( (binary_expression "lVar30 + 0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x30) = uVar7;" (assignment_expression "*(uint *)(lVar30 + 0x30) = uVar7" (pointer_expression "*(uint *)(lVar30 + 0x30)" * (cast_expression "(uint *)(lVar30 + 0x30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x30)" ( (binary_expression "lVar30 + 0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(bool *)(lVar30 + 0x34) = bVar48;" (assignment_expression "*(bool *)(lVar30 + 0x34) = bVar48" (pointer_expression "*(bool *)(lVar30 + 0x34)" * (cast_expression "(bool *)(lVar30 + 0x34)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x34)" ( (binary_expression "lVar30 + 0x34" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x38) = param_11;" (assignment_expression "*(uint *)(lVar30 + 0x38) = param_11" (pointer_expression "*(uint *)(lVar30 + 0x38)" * (cast_expression "(uint *)(lVar30 + 0x38)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x38)" ( (binary_expression "lVar30 + 0x38" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char *)(lVar30 + 0x3c) = cVar12;" (assignment_expression "*(char *)(lVar30 + 0x3c) = cVar12" (pointer_expression "*(char *)(lVar30 + 0x3c)" * (cast_expression "(char *)(lVar30 + 0x3c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x3c)" ( (binary_expression "lVar30 + 0x3c" identifier + number_literal) )))) = identifier) ;) (expression_statement "FUN_004a11e0(lVar30,&DAT_0067db40);" (call_expression "FUN_004a11e0(lVar30,&DAT_0067db40)" identifier (argument_list "(lVar30,&DAT_0067db40)" ( identifier , (pointer_expression "&DAT_0067db40" & identifier) ))) ;) (expression_statement "_DAT_0067db50 = _DAT_0067db50 + 1;" (assignment_expression "_DAT_0067db50 = _DAT_0067db50 + 1" identifier = (binary_expression "_DAT_0067db50 + 1" identifier + number_literal)) ;) })))) }) (else_clause "else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }" else (compound_statement "{\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }" { (if_statement "if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }" if (parenthesized_expression "(param_8 != (undefined8 *)0x0)" ( (binary_expression "param_8 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }" { (labeled_statement "LAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }" statement_identifier : (if_statement "if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }" if (parenthesized_expression "(*(char *)(param_8 + 0x11) != '\0')" ( (binary_expression "*(char *)(param_8 + 0x11) != '\0'" (pointer_expression "*(char *)(param_8 + 0x11)" * (cast_expression "(char *)(param_8 + 0x11)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 0x11)" ( (binary_expression "param_8 + 0x11" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }" { (expression_statement "uVar17 = FUN_001d7270(param_9,plVar3,0);" (assignment_expression "uVar17 = FUN_001d7270(param_9,plVar3,0)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,0)" identifier (argument_list "(param_9,plVar3,0)" ( identifier , identifier , number_literal )))) ;) (if_statement "if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }" if (parenthesized_expression "(*(int *)((long)param_8 + 0x5c) != 2)" ( (binary_expression "*(int *)((long)param_8 + 0x5c) != 2" (pointer_expression "*(int *)((long)param_8 + 0x5c)" * (cast_expression "(int *)((long)param_8 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x5c)" ( (binary_expression "(long)param_8 + 0x5c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }" { (expression_statement "piVar4 = *(int **)(uVar34 + 0xd0);" (assignment_expression "piVar4 = *(int **)(uVar34 + 0xd0)" identifier = (pointer_expression "*(int **)(uVar34 + 0xd0)" * (cast_expression "(int **)(uVar34 + 0xd0)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar34 + 0xd0)" ( (binary_expression "uVar34 + 0xd0" identifier + number_literal) ))))) ;) (if_statement "if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }" if (parenthesized_expression "(piVar4 == (int *)0x0)" ( (binary_expression "piVar4 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }" { (expression_statement "iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);" (assignment_expression "iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200)" identifier = (binary_expression "(*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200)" (subscript_expression "(*(int **)(uVar34 + 200))[1]" (parenthesized_expression "(*(int **)(uVar34 + 200))" ( (pointer_expression "*(int **)(uVar34 + 200)" * (cast_expression "(int **)(uVar34 + 200)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar34 + 200)" ( (binary_expression "uVar34 + 200" identifier + number_literal) )))) )) [ number_literal ]) + (pointer_expression "**(int **)(uVar34 + 200)" * (pointer_expression "*(int **)(uVar34 + 200)" * (cast_expression "(int **)(uVar34 + 200)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar34 + 200)" ( (binary_expression "uVar34 + 200" identifier + number_literal) ))))))) ;) }) (else_clause "else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }" else (compound_statement "{\n                    iVar38 = piVar4[1] + *piVar4;\n                  }" { (expression_statement "iVar38 = piVar4[1] + *piVar4;" (assignment_expression "iVar38 = piVar4[1] + *piVar4" identifier = (binary_expression "piVar4[1] + *piVar4" (subscript_expression "piVar4[1]" identifier [ number_literal ]) + (pointer_expression "*piVar4" * identifier))) ;) }))) (if_statement "if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }" if (parenthesized_expression "(*(int *)(param_8 + 4) != 0)" ( (binary_expression "*(int *)(param_8 + 4) != 0" (pointer_expression "*(int *)(param_8 + 4)" * (cast_expression "(int *)(param_8 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 4)" ( (binary_expression "param_8 + 4" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }" { (expression_statement "*(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;" (assignment_expression "*(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18" (pointer_expression "*(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3))" * (cast_expression "(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3))" ( (binary_expression "*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)" (pointer_expression "*(long *)(uVar34 + 0xb8)" * (cast_expression "(long *)(uVar34 + 0xb8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar34 + 0xb8)" ( (binary_expression "uVar34 + 0xb8" identifier + number_literal) )))) + (call_expression "(ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)" ( (binary_expression "(uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3" (call_expression "(uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20)" ( (binary_expression "((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20" (parenthesized_expression "((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2)" ( (binary_expression "(*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2" (binary_expression "(*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38" (parenthesized_expression "(*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0))" ( (binary_expression "*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)" (pointer_expression "*(int *)(param_8 + 4)" * (cast_expression "(int *)(param_8 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 4)" ( (binary_expression "param_8 + 4" identifier + number_literal) )))) - (pointer_expression "*(int *)(uVar34 + 0xc0)" * (cast_expression "(int *)(uVar34 + 0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar34 + 0xc0)" ( (binary_expression "uVar34 + 0xc0" identifier + number_literal) ))))) )) + identifier) + number_literal) )) * number_literal) ))) >> number_literal) )))) )))) = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (break_statement "break;" break ;) })) (goto_statement "goto LAB_002c8342;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c8347;" goto statement_identifier ;) }))) })) (expression_statement "uVar17 = FUN_001d7270(param_9,plVar3,0);" (assignment_expression "uVar17 = FUN_001d7270(param_9,plVar3,0)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,0)" identifier (argument_list "(param_9,plVar3,0)" ( identifier , identifier , number_literal )))) ;) (expression_statement "*(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;" (assignment_expression "*(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (pointer_expression "*(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8)" * (cast_expression "(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(uVar34 + 0xb8) + (ulong)local_e8)" ( (binary_expression "*(long *)(uVar34 + 0xb8) + (ulong)local_e8" (pointer_expression "*(long *)(uVar34 + 0xb8)" * (cast_expression "(long *)(uVar34 + 0xb8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar34 + 0xb8)" ( (binary_expression "uVar34 + 0xb8" identifier + number_literal) )))) + (cast_expression "(ulong)local_e8" ( (type_descriptor "ulong" type_identifier) ) identifier)) )))) = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) }))) }))) (break_statement "break;" break ;)) (case_statement "case 0x17:" case number_literal :) (case_statement "case 0x1f:" case number_literal :) (case_statement "case 0x95:" case number_literal :) (case_statement "case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }" { (if_statement "if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }" { (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" identifier = (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" ( (pointer_expression "**(code **)(*plVar3 + 0x160)" * (pointer_expression "*(code **)(*plVar3 + 0x160)" * (cast_expression "(code **)(*plVar3 + 0x160)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*plVar3 + 0x160)" ( (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" * identifier) + number_literal) ))))) )) (argument_list "(plVar3,uVar7,0,(long)(int)local_c8)" ( identifier , identifier , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (goto_statement "goto LAB_002c5ddf;" goto statement_identifier ;) })) (labeled_statement "LAB_002c8369:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c836e:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (goto_statement "goto LAB_002c8373;" goto statement_identifier ;) })) (if_statement "if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }" { (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3)" identifier = (call_expression "FUN_0029b910(lVar30,param_8,0,plVar3)" identifier (argument_list "(lVar30,param_8,0,plVar3)" ( identifier , identifier , number_literal , identifier )))) ;) (labeled_statement "LAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }" statement_identifier : (if_statement "if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }" if (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" ( (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }" { (expression_statement "uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);" (assignment_expression "uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" identifier = (call_expression "FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" identifier (argument_list "(*(long *)(param_4 + 0x20),local_e8,plVar3)" ( (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) , identifier , identifier )))) ;) (if_statement "if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;" if (parenthesized_expression "(*(char *)((long)param_1 + 4) != '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) != '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c67b0;" goto statement_identifier ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = (uint)*param_10;" (assignment_expression "uVar19 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;" (assignment_expression "uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36" identifier = (binary_expression "(uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36" (parenthesized_expression "(uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8)" ( (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8" (binary_expression "uVar19 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" ( (binary_expression "uVar19 & 0xff0000" identifier & number_literal) )) >> number_literal)) )) ^ identifier)) ;) (expression_statement "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;" (assignment_expression "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (goto_statement "goto LAB_002c624f;" goto statement_identifier ;) }))) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_002c826c:\n        FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8271:\n        FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8276:\n        FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c827b:\n        FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8280:\n        FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c8285:\n        FUN_00293370();" statement_identifier : (expression_statement "FUN_00293370();" (call_expression "FUN_00293370()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");" statement_identifier : (expression_statement "FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset")" identifier (argument_list "("../../gold/mips.cc",0x86a,"tls_ldm_offset")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""tls_ldm_offset"" " string_content ") ))) ;))) (case_statement "case 0x18:" case number_literal :) (case_statement "case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;" statement_identifier : (expression_statement "uVar34 = (ulong)-local_c0;" (assignment_expression "uVar34 = (ulong)-local_c0" identifier = (binary_expression "(ulong)-local_c0" (parenthesized_expression "(ulong)" ( identifier )) - identifier)) ;)) (labeled_statement "LAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);" statement_identifier : (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar34);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar34)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar34)" identifier (argument_list "(param_9,plVar3,uVar34)" ( identifier , identifier , identifier )))) ;)) (expression_statement "uVar19 = (uint)uVar34;" (assignment_expression "uVar19 = (uint)uVar34" identifier = (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (cVar13 != '\0') goto LAB_002c59a8;" if (parenthesized_expression "(cVar13 != '\0')" ( (binary_expression "cVar13 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;" (assignment_expression "*param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38" (pointer_expression "*param_10" * identifier) = (binary_expression "(uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38" (binary_expression "(uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28" (binary_expression "(uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18" (binary_expression "(uVar34 & 0xff000000) << 8" (parenthesized_expression "(uVar34 & 0xff000000)" ( (binary_expression "uVar34 & 0xff000000" identifier & number_literal) )) << number_literal) | (binary_expression "(uVar34 & 0xff0000) << 0x18" (parenthesized_expression "(uVar34 & 0xff0000)" ( (binary_expression "uVar34 & 0xff0000" identifier & number_literal) )) << number_literal)) | (binary_expression "(uVar34 & 0xff00) << 0x28" (parenthesized_expression "(uVar34 & 0xff00)" ( (binary_expression "uVar34 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar34 << 0x38" identifier << number_literal))) ;) (break_statement "break;" break ;)) (case_statement "case 0x1c:" case number_literal :) (case_statement "case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c59bd:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar16 = (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar16 = (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) ;) (expression_statement "uVar36 = uVar17 >> 0x18 | uVar16;" (assignment_expression "uVar36 = uVar17 >> 0x18 | uVar16" identifier = (binary_expression "uVar17 >> 0x18 | uVar16" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | identifier)) ;) (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" identifier = identifier) ;) (if_statement "if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }" if (parenthesized_expression "((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0))" ( (binary_expression "(bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)" (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) && (parenthesized_expression "(uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)" ( (comma_expression "uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0" (assignment_expression "uVar19 = uVar36 - 0x10000" identifier = (binary_expression "uVar36 - 0x10000" identifier - number_literal)) , (binary_expression "(uVar16 & 0x8000) == 0" (parenthesized_expression "(uVar16 & 0x8000)" ( (binary_expression "uVar16 & 0x8000" identifier & number_literal) )) == number_literal)) ))) )) (compound_statement "{\n          uVar19 = uVar36;\n        }" { (expression_statement "uVar19 = uVar36;" (assignment_expression "uVar19 = uVar36" identifier = identifier) ;) })) (expression_statement "uVar16 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "uVar16 = FUN_001d7270(param_9,plVar3,uVar19)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" identifier (argument_list "(param_9,plVar3,uVar19)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);" (assignment_expression "uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20)" identifier = (call_expression "(uint)((ulong)uVar16 + 0x80008000 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulong)uVar16 + 0x80008000 >> 0x20)" ( (binary_expression "(ulong)uVar16 + 0x80008000 >> 0x20" (binary_expression "(ulong)uVar16 + 0x80008000" (cast_expression "(ulong)uVar16" ( (type_descriptor "ulong" type_identifier) ) identifier) + number_literal) >> number_literal) )))) ;) (goto_statement "goto joined_r0x002c59a3;" goto statement_identifier ;)) (case_statement "case 0x1d:" case number_literal :) (case_statement "case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6b55:\n        uVar19 = (uint)*param_10;" statement_identifier : (expression_statement "uVar19 = (uint)*param_10;" (assignment_expression "uVar19 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }" { (expression_statement "uVar16 = (uVar19 & 0xff0000) >> 8;" (assignment_expression "uVar16 = (uVar19 & 0xff0000) >> 8" identifier = (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" ( (binary_expression "uVar19 & 0xff0000" identifier & number_literal) )) >> number_literal)) ;) (expression_statement "uVar36 = uVar19 >> 0x18 | uVar16;" (assignment_expression "uVar36 = uVar19 >> 0x18 | uVar16" identifier = (binary_expression "uVar19 >> 0x18 | uVar16" (binary_expression "uVar19 >> 0x18" identifier >> number_literal) | identifier)) ;) (expression_statement "uVar17 = uVar36 - 0x10000;" (assignment_expression "uVar17 = uVar36 - 0x10000" identifier = (binary_expression "uVar36 - 0x10000" identifier - number_literal)) ;) (if_statement "if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }" if (parenthesized_expression "((uVar16 & 0x8000) == 0)" ( (binary_expression "(uVar16 & 0x8000) == 0" (parenthesized_expression "(uVar16 & 0x8000)" ( (binary_expression "uVar16 & 0x8000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar17 = uVar36;\n          }" { (expression_statement "uVar17 = uVar36;" (assignment_expression "uVar17 = uVar36" identifier = identifier) ;) })) })) (expression_statement "FUN_001d7270(param_9,plVar3,uVar17);" (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" identifier (argument_list "(param_9,plVar3,uVar17)" ( identifier , identifier , identifier ))) ;) (if_statement "if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }" if (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) (compound_statement "{\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }" { (expression_statement "uVar19 = uVar19 & 0xffff;" (assignment_expression "uVar19 = uVar19 & 0xffff" identifier = (binary_expression "uVar19 & 0xffff" identifier & number_literal)) ;) (expression_statement "puVar37 = param_10;" (assignment_expression "puVar37 = param_10" identifier = identifier) ;) (goto_statement "goto LAB_002c5c85;" goto statement_identifier ;) })) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_1 = 0;" (assignment_expression "*(uint *)param_1 = 0" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case 0x25:" case number_literal :) (case_statement "case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }" statement_identifier : (if_statement "if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }" if (parenthesized_expression "(param_8 != (undefined8 *)0x0)" ( (binary_expression "param_8 != (undefined8 *)0x0" identifier != (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }" { (expression_statement "cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);" (assignment_expression "cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1)" identifier = (call_expression "FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1)" identifier (argument_list "(param_8,*(int *)(param_8 + 4) != 0,1)" ( identifier , (binary_expression "*(int *)(param_8 + 4) != 0" (pointer_expression "*(int *)(param_8 + 4)" * (cast_expression "(int *)(param_8 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 4)" ( (binary_expression "param_8 + 4" identifier + number_literal) )))) != number_literal) , number_literal )))) ;) (if_statement "if (cVar13 == '\0') break;" if (parenthesized_expression "(cVar13 == '\0')" ( (binary_expression "cVar13 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (break_statement "break;" break ;)) (expression_statement "cVar13 = *(char *)((long)param_1 + 4);" (assignment_expression "cVar13 = *(char *)((long)param_1 + 4)" identifier = (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) }))) (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;" (assignment_expression "uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" identifier = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar36 = uVar16;" (assignment_expression "uVar36 = uVar16" identifier = identifier) ;) (if_statement "if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }" if (parenthesized_expression "(((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809))))" ( (binary_expression "((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))" (parenthesized_expression "((uVar17 == 0x25) && (local_e3 != 1))" ( (binary_expression "(uVar17 == 0x25) && (local_e3 != 1)" (parenthesized_expression "(uVar17 == 0x25)" ( (binary_expression "uVar17 == 0x25" identifier == number_literal) )) && (parenthesized_expression "(local_e3 != 1)" ( (binary_expression "local_e3 != 1" identifier != number_literal) ))) )) && (parenthesized_expression "((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))" ( (parenthesized_expression "(uVar16 == 0x3200008 || (uVar16 == 0x320f809))" ( (binary_expression "uVar16 == 0x3200008 || (uVar16 == 0x320f809)" (binary_expression "uVar16 == 0x3200008" identifier == number_literal) || (parenthesized_expression "(uVar16 == 0x320f809)" ( (binary_expression "uVar16 == 0x320f809" identifier == number_literal) ))) )) ))) )) (compound_statement "{\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }" { (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3)" identifier = (call_expression "FUN_001d7270(param_9,plVar3)" identifier (argument_list "(param_9,plVar3)" ( identifier , identifier )))) ;) (if_statement "if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }" if (parenthesized_expression "((iVar38 - param_11) + 0x1fffc < 0x40000)" ( (binary_expression "(iVar38 - param_11) + 0x1fffc < 0x40000" (binary_expression "(iVar38 - param_11) + 0x1fffc" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal) < number_literal) )) (compound_statement "{\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }" { (expression_statement "uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;" (assignment_expression "uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff" identifier = (binary_expression "(iVar38 - param_11) - 4 >> 2 & 0xffff" (binary_expression "(iVar38 - param_11) - 4 >> 2" (binary_expression "(iVar38 - param_11) - 4" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) - number_literal) >> number_literal) & number_literal)) ;) (expression_statement "uVar36 = uVar17 | 0x10000000;" (assignment_expression "uVar36 = uVar17 | 0x10000000" identifier = (binary_expression "uVar17 | 0x10000000" identifier | number_literal)) ;) (if_statement "if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }" if (parenthesized_expression "(uVar16 != 0x3200008)" ( (binary_expression "uVar16 != 0x3200008" identifier != number_literal) )) (compound_statement "{\n              uVar36 = uVar17 | 0x4110000;\n            }" { (expression_statement "uVar36 = uVar17 | 0x4110000;" (assignment_expression "uVar36 = uVar17 | 0x4110000" identifier = (binary_expression "uVar17 | 0x4110000" identifier | number_literal)) ;) })) })) })) (if_statement "if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }" if (parenthesized_expression "(cVar13 == '\0')" ( (binary_expression "cVar13 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }" { (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;" (assignment_expression "*(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal))) ;) }) (else_clause "else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }" else (compound_statement "{\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }" { (expression_statement "*(uint *)param_1 = uVar36;" (assignment_expression "*(uint *)param_1 = uVar36" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) }))) (break_statement "break;" break ;)) (case_statement "case 0x27:" case number_literal :) (case_statement "case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;" (assignment_expression "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (if_statement "if (bVar48 == false) {\n          uVar17 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar17 = local_c8;\n        }" { (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar17)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" identifier (argument_list "(param_9,plVar3,uVar17)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - 0x8000;" (assignment_expression "uVar19 = iVar38 - 0x8000" identifier = (binary_expression "iVar38 - 0x8000" identifier - number_literal)) ;) (if_statement "if (!bVar49 || !bVar50) goto LAB_002c5ccb;" if (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) (goto_statement "goto LAB_002c5ccb;" goto statement_identifier ;)) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (case_statement "case 0x2a:" case number_literal :) (case_statement "case 0x6a:" case number_literal :) (case_statement "case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }" { (if_statement "if (lVar30 == 0) goto LAB_002c832e;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c832e;" goto statement_identifier ;)) (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8)" identifier = (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" ( (pointer_expression "**(code **)(*plVar3 + 0x160)" * (pointer_expression "*(code **)(*plVar3 + 0x160)" * (cast_expression "(code **)(*plVar3 + 0x160)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*plVar3 + 0x160)" ( (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" * identifier) + number_literal) ))))) )) (argument_list "(plVar3,uVar7,2,(long)(int)local_c8)" ( identifier , identifier , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (labeled_statement "LAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (lVar30 != 0) goto LAB_002c5c62;" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (goto_statement "goto LAB_002c5c62;" goto statement_identifier ;)) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }" else (if_statement "if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (compound_statement "{\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }" { (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3)" identifier = (call_expression "FUN_0029b910(lVar30,param_8,2,plVar3)" identifier (argument_list "(lVar30,param_8,2,plVar3)" ( identifier , identifier , number_literal , identifier )))) ;) (goto_statement "goto LAB_002c5c48;" goto statement_identifier ;) })))) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_002c83ab;" goto statement_identifier ;)) (case_statement "case 0x2b:" case number_literal :) (case_statement "case 0x6b:" case number_literal :) (case_statement "case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }" { (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_002c8364:\n          FUN_00290a70();" statement_identifier : (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;)) (goto_statement "goto LAB_002c8369;" goto statement_identifier ;) })) (if_statement "if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }" if (parenthesized_expression "(*(long *)(lVar30 + 0xd0) == 0)" ( (binary_expression "*(long *)(lVar30 + 0xd0) == 0" (pointer_expression "*(long *)(lVar30 + 0xd0)" * (cast_expression "(long *)(lVar30 + 0xd0)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0xd0)" ( (binary_expression "lVar30 + 0xd0" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n          lVar24 = *(long *)(lVar30 + 200);\n        }" { (expression_statement "lVar24 = *(long *)(lVar30 + 200);" (assignment_expression "lVar24 = *(long *)(lVar30 + 200)" identifier = (pointer_expression "*(long *)(lVar30 + 200)" * (cast_expression "(long *)(lVar30 + 200)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 200)" ( (binary_expression "lVar30 + 200" identifier + number_literal) ))))) ;) }) (else_clause "else {\n          lVar24 = plVar3[0x6e];\n        }" else (compound_statement "{\n          lVar24 = plVar3[0x6e];\n        }" { (expression_statement "lVar24 = plVar3[0x6e];" (assignment_expression "lVar24 = plVar3[0x6e]" identifier = (subscript_expression "plVar3[0x6e]" identifier [ number_literal ])) ;) }))) (if_statement "if (lVar24 == 0) goto LAB_002c828a;" if (parenthesized_expression "(lVar24 == 0)" ( (binary_expression "lVar24 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c828a;" goto statement_identifier ;)) (expression_statement "local_e8 = *(uint *)(lVar24 + 0x14);" (assignment_expression "local_e8 = *(uint *)(lVar24 + 0x14)" identifier = (pointer_expression "*(uint *)(lVar24 + 0x14)" * (cast_expression "(uint *)(lVar24 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar24 + 0x14)" ( (binary_expression "lVar24 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "uVar19 = FUN_00292520(lVar30,local_e8,plVar3);" (assignment_expression "uVar19 = FUN_00292520(lVar30,local_e8,plVar3)" identifier = (call_expression "FUN_00292520(lVar30,local_e8,plVar3)" identifier (argument_list "(lVar30,local_e8,plVar3)" ( identifier , identifier , identifier )))) ;) (goto_statement "goto LAB_002c5c74;" goto statement_identifier ;)) (case_statement "case 0x2c:" case number_literal :) (case_statement "case 0x6c:" case number_literal :) (case_statement "case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar16 = local_c8;\n        }" { (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) })) (expression_statement "uVar19 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar19 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (goto_statement "goto LAB_002c5a76;" goto statement_identifier ;)) (case_statement "case 0x2d:" case number_literal :) (case_statement "case 0x6d:" case number_literal :) (case_statement "case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;" case number_literal : (labeled_statement "switchD_002c4f87_caseD_2d:\n        bVar48 = false;" statement_identifier : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;)) (labeled_statement "switchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar16 = local_c8;\n        }" { (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - 0x8000;" (assignment_expression "uVar19 = iVar38 - 0x8000" identifier = (binary_expression "iVar38 - 0x8000" identifier - number_literal)) ;) (goto_statement "goto joined_r0x002c59a3;" goto statement_identifier ;)) (case_statement "case 0x2e:" case number_literal :) (case_statement "case 0x6e:" case number_literal :) (case_statement "case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);" statement_identifier : (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;)) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }" { (if_statement "if (lVar30 == 0) goto LAB_002c836e;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c836e;" goto statement_identifier ;)) (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8)" identifier = (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" ( (pointer_expression "**(code **)(*plVar3 + 0x160)" * (pointer_expression "*(code **)(*plVar3 + 0x160)" * (cast_expression "(code **)(*plVar3 + 0x160)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*plVar3 + 0x160)" ( (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" * identifier) + number_literal) ))))) )) (argument_list "(plVar3,uVar7,1,(long)(int)local_c8)" ( identifier , identifier , number_literal , (cast_expression "(long)(int)local_c8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }) (else_clause "else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }" else (compound_statement "{\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }" { (if_statement "if (lVar30 == 0) goto LAB_002c8338;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c8338;" goto statement_identifier ;)) (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3)" identifier = (call_expression "FUN_0029b910(lVar30,param_8,1,plVar3)" identifier (argument_list "(lVar30,param_8,1,plVar3)" ( identifier , identifier , number_literal , identifier )))) ;) }))) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }" { (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto switchD_002c4f87_caseD_2d;" goto statement_identifier ;) })) (labeled_statement "LAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);" statement_identifier : (expression_statement "uVar19 = FUN_00292520(lVar30,local_e8,plVar3);" (assignment_expression "uVar19 = FUN_00292520(lVar30,local_e8,plVar3)" identifier = (call_expression "FUN_00292520(lVar30,local_e8,plVar3)" identifier (argument_list "(lVar30,local_e8,plVar3)" ( identifier , identifier , identifier )))) ;)) (labeled_statement "LAB_002c5c74:\n        puVar37 = param_1;" statement_identifier : (expression_statement "puVar37 = param_1;" (assignment_expression "puVar37 = param_1" identifier = identifier) ;)) (if_statement "if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }" if (parenthesized_expression "(*(char *)((long)param_1 + 4) == '\0')" ( (binary_expression "*(char *)((long)param_1 + 4) == '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" * (cast_expression "(char *)((long)param_1 + 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_1 + 4)" ( (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }" { (labeled_statement "LAB_002c6098:\n          uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;" (assignment_expression "uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19" identifier = (binary_expression "(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19" (parenthesized_expression "(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8)" ( (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) )) ^ identifier)) ;) (expression_statement "uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;" (assignment_expression "uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" identifier = (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) (labeled_statement "LAB_002c60ab:\n          *(uint *)param_10 = uVar17;" statement_identifier : (expression_statement "*(uint *)param_10 = uVar17;" (assignment_expression "*(uint *)param_10 = uVar17" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;)) (expression_statement "uVar16 = (uint)(0xffff < uVar19 + 0x8000);" (assignment_expression "uVar16 = (uint)(0xffff < uVar19 + 0x8000)" identifier = (call_expression "(uint)(0xffff < uVar19 + 0x8000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xffff < uVar19 + 0x8000)" ( (binary_expression "0xffff < uVar19 + 0x8000" number_literal < (binary_expression "uVar19 + 0x8000" identifier + number_literal)) )))) ;) }) (else_clause "else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }" else (compound_statement "{\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }" { (labeled_statement "LAB_002c5c85:\n          *(uint *)puVar37 = uVar19;" statement_identifier : (expression_statement "*(uint *)puVar37 = uVar19;" (assignment_expression "*(uint *)puVar37 = uVar19" (pointer_expression "*(uint *)puVar37" * (cast_expression "(uint *)puVar37" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;)) (labeled_statement "LAB_002c5c87:\n          uVar16 = 0;" statement_identifier : (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;)) }))) (break_statement "break;" break ;)) (case_statement "case 0x2f:" case number_literal :) (case_statement "case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;" (assignment_expression "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (if_statement "if (bVar48 == false) {\n          uVar17 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar17 = local_c8;\n        }" { (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar17)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" identifier (argument_list "(param_9,plVar3,uVar17)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - 0x7000;" (assignment_expression "uVar19 = iVar38 - 0x7000" identifier = (binary_expression "iVar38 - 0x7000" identifier - number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;" (assignment_expression "*(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18" (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8" (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8" (binary_expression "uVar19 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" ( (binary_expression "uVar19 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" ( (binary_expression "uVar19 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "iVar38 << 0x18" identifier << number_literal))) ;) (break_statement "break;" break ;)) (case_statement "case 0x31:" case number_literal :) (case_statement "case 0x6f:" case number_literal :) (case_statement "case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar16 = local_c8;\n        }" { (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 + 0x1000;" (assignment_expression "uVar19 = iVar38 + 0x1000" identifier = (binary_expression "iVar38 + 0x1000" identifier + number_literal)) ;) (labeled_statement "LAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;" statement_identifier : (expression_statement "uVar19 = uVar19 >> 0x10;" (assignment_expression "uVar19 = uVar19 >> 0x10" identifier = (binary_expression "uVar19 >> 0x10" identifier >> number_literal)) ;)) (goto_statement "goto joined_r0x002c59a3;" goto statement_identifier ;)) (case_statement "case 0x32:" case number_literal :) (case_statement "case 0x70:" case number_literal :) (case_statement "case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" identifier = identifier) ;) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n          uVar16 = local_c8;\n        }" { (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - 0x7000;" (assignment_expression "uVar19 = iVar38 - 0x7000" identifier = (binary_expression "iVar38 - 0x7000" identifier - number_literal)) ;) (labeled_statement "joined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }" statement_identifier : (if_statement "if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }" if (parenthesized_expression "(bVar49 && bVar50)" ( (binary_expression "bVar49 && bVar50" identifier && identifier) )) (compound_statement "{\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }" { (labeled_statement "LAB_002c59a8:\n          uVar16 = 0;" statement_identifier : (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;)) (expression_statement "*(uint *)param_1 = uVar19;" (assignment_expression "*(uint *)param_1 = uVar19" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }) (else_clause "else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }" else (compound_statement "{\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }" { (expression_statement "*(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);" (assignment_expression "*(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18)" identifier ^ (parenthesized_expression "(((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18)" ( (binary_expression "((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18" (binary_expression "((uVar19 ^ uVar36) & 0xff00) << 8" (parenthesized_expression "((uVar19 ^ uVar36) & 0xff00)" ( (binary_expression "(uVar19 ^ uVar36) & 0xff00" (parenthesized_expression "(uVar19 ^ uVar36)" ( (binary_expression "uVar19 ^ uVar36" identifier ^ identifier) )) & number_literal) )) << number_literal) | (binary_expression "(uVar19 ^ uVar36) << 0x18" (parenthesized_expression "(uVar19 ^ uVar36)" ( (binary_expression "uVar19 ^ uVar36" identifier ^ identifier) )) << number_literal)) )))) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) })))) (break_statement "break;" break ;)) (case_statement "case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6f06:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal))) ;) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar36 * 4;" (assignment_expression "uVar19 = uVar36 * 4" identifier = (binary_expression "uVar36 * 4" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0x7ffffc;" (assignment_expression "uVar45 = uVar19 & 0x7ffffc" identifier = (binary_expression "uVar19 & 0x7ffffc" identifier & number_literal)) ;) (expression_statement "uVar16 = uVar45 - 0x800000;" (assignment_expression "uVar16 = uVar45 - 0x800000" identifier = (binary_expression "uVar45 - 0x800000" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x400000) == 0)" ( (binary_expression "(uVar19 & 0x400000) == 0" (parenthesized_expression "(uVar19 & 0x400000)" ( (binary_expression "uVar19 & 0x400000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar16 = uVar45;\n          }" { (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11 >> 2;" (assignment_expression "uVar19 = iVar38 - param_11 >> 2" identifier = (binary_expression "iVar38 - param_11 >> 2" (binary_expression "iVar38 - param_11" identifier - identifier) >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" identifier = (binary_expression "uVar36 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);" (assignment_expression "*(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" identifier ^ (parenthesized_expression "((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "(uVar36 & 0x1f0000) >> 8" (parenthesized_expression "(uVar36 & 0x1f0000)" ( (binary_expression "uVar36 & 0x1f0000" identifier & number_literal) )) >> number_literal) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )))) ;) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar16 = 3;" (assignment_expression "uVar16 = 3" identifier = number_literal) ;) (if_statement "if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }" if (parenthesized_expression "((uVar34 & 3) == 0)" ( (binary_expression "(uVar34 & 3) == 0" (parenthesized_expression "(uVar34 & 3)" ( (binary_expression "uVar34 & 3" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }" { (expression_statement "uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);" (assignment_expression "uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000)" identifier = (call_expression "(uint)(0x7fffff < (iVar38 - param_11) + 0x400000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0x7fffff < (iVar38 - param_11) + 0x400000)" ( (binary_expression "0x7fffff < (iVar38 - param_11) + 0x400000" number_literal < (binary_expression "(iVar38 - param_11) + 0x400000" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) )))) ;) })) (break_statement "break;" break ;)) (case_statement "case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6fd2:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;" (assignment_expression "uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar16 * 4;" (assignment_expression "uVar19 = uVar16 * 4" identifier = (binary_expression "uVar16 * 4" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0xffffffc;" (assignment_expression "uVar45 = uVar19 & 0xffffffc" identifier = (binary_expression "uVar19 & 0xffffffc" identifier & number_literal)) ;) (expression_statement "uVar36 = uVar45 + 0xf0000000;" (assignment_expression "uVar36 = uVar45 + 0xf0000000" identifier = (binary_expression "uVar45 + 0xf0000000" identifier + number_literal)) ;) (if_statement "if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x8000000) == 0)" ( (binary_expression "(uVar19 & 0x8000000) == 0" (parenthesized_expression "(uVar19 & 0x8000000)" ( (binary_expression "uVar19 & 0x8000000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar36 = uVar45;\n          }" { (expression_statement "uVar36 = uVar45;" (assignment_expression "uVar36 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar36)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" identifier (argument_list "(param_9,plVar3,uVar36)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11 >> 2;" (assignment_expression "uVar19 = iVar38 - param_11 >> 2" identifier = (binary_expression "iVar38 - param_11 >> 2" (binary_expression "iVar38 - param_11" identifier - identifier) >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar16 = uVar16 ^ uVar19;" (assignment_expression "uVar16 = uVar16 ^ uVar19" identifier = (binary_expression "uVar16 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);" (assignment_expression "*(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18)" identifier ^ (parenthesized_expression "((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18)" ( (binary_expression "(uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18" (binary_expression "(uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8" (binary_expression "(uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "(uVar16 & 0x3ffffff) >> 0x18" (parenthesized_expression "(uVar16 & 0x3ffffff)" ( (binary_expression "uVar16 & 0x3ffffff" identifier & number_literal) )) >> number_literal) | (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" ( (binary_expression "uVar16 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar16 & 0xff00) << 8" (parenthesized_expression "(uVar16 & 0xff00)" ( (binary_expression "uVar16 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "(uVar16 & 0x3ffffff) << 0x18" (parenthesized_expression "(uVar16 & 0x3ffffff)" ( (binary_expression "uVar16 & 0x3ffffff" identifier & number_literal) )) << number_literal)) )))) ;) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar36)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" identifier (argument_list "(param_9,plVar3,uVar36)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar16 = 3;" (assignment_expression "uVar16 = 3" identifier = number_literal) ;) (if_statement "if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }" if (parenthesized_expression "((uVar34 & 3) == 0)" ( (binary_expression "(uVar34 & 3) == 0" (parenthesized_expression "(uVar34 & 3)" ( (binary_expression "uVar34 & 3" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }" { (expression_statement "uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);" (assignment_expression "uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000)" identifier = (call_expression "(uint)(0xfffffff < (iVar38 - param_11) + 0x8000000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xfffffff < (iVar38 - param_11) + 0x8000000)" ( (binary_expression "0xfffffff < (iVar38 - param_11) + 0x8000000" number_literal < (binary_expression "(iVar38 - param_11) + 0x8000000" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) )))) ;) })) (break_statement "break;" break ;)) (case_statement "case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6d53:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal))) ;) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar36 * 8;" (assignment_expression "uVar19 = uVar36 * 8" identifier = (binary_expression "uVar36 * 8" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0x1ffff8;" (assignment_expression "uVar45 = uVar19 & 0x1ffff8" identifier = (binary_expression "uVar19 & 0x1ffff8" identifier & number_literal)) ;) (expression_statement "uVar16 = uVar45 - 0x200000;" (assignment_expression "uVar16 = uVar45 - 0x200000" identifier = (binary_expression "uVar45 - 0x200000" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x100000) == 0)" ( (binary_expression "(uVar19 & 0x100000) == 0" (parenthesized_expression "(uVar19 & 0x100000)" ( (binary_expression "uVar19 & 0x100000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar16 = uVar45;\n          }" { (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar45 = iVar38 - (param_11 & 0xfffffff8);" (assignment_expression "uVar45 = iVar38 - (param_11 & 0xfffffff8)" identifier = (binary_expression "iVar38 - (param_11 & 0xfffffff8)" identifier - (parenthesized_expression "(param_11 & 0xfffffff8)" ( (binary_expression "param_11 & 0xfffffff8" identifier & number_literal) )))) ;) (expression_statement "uVar19 = uVar45 >> 3;" (assignment_expression "uVar19 = uVar45 >> 3" identifier = (binary_expression "uVar45 >> 3" identifier >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" identifier = (binary_expression "uVar36 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);" (assignment_expression "*(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" identifier ^ (parenthesized_expression "((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "(uVar36 & 0x30000) >> 8" (parenthesized_expression "(uVar36 & 0x30000)" ( (binary_expression "uVar36 & 0x30000" identifier & number_literal) )) >> number_literal) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )))) ;) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar34 = uVar34 & 7;" (assignment_expression "uVar34 = uVar34 & 7" identifier = (binary_expression "uVar34 & 7" identifier & number_literal)) ;) (labeled_statement "joined_r0x002c6ec7:\n        uVar16 = 3;" statement_identifier : (expression_statement "uVar16 = 3;" (assignment_expression "uVar16 = 3" identifier = number_literal) ;)) (if_statement "if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }" if (parenthesized_expression "(uVar34 == 0)" ( (binary_expression "uVar34 == 0" identifier == number_literal) )) (compound_statement "{\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }" { (expression_statement "uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);" (assignment_expression "uVar16 = (uint)(0x1fffff < uVar45 + 0x100000)" identifier = (call_expression "(uint)(0x1fffff < uVar45 + 0x100000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0x1fffff < uVar45 + 0x100000)" ( (binary_expression "0x1fffff < uVar45 + 0x100000" number_literal < (binary_expression "uVar45 + 0x100000" identifier + number_literal)) )))) ;) })) (break_statement "break;" break ;)) (case_statement "case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6e24:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal))) ;) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar36 * 4;" (assignment_expression "uVar19 = uVar36 * 4" identifier = (binary_expression "uVar36 * 4" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0x1ffffc;" (assignment_expression "uVar45 = uVar19 & 0x1ffffc" identifier = (binary_expression "uVar19 & 0x1ffffc" identifier & number_literal)) ;) (expression_statement "uVar16 = uVar45 - 0x200000;" (assignment_expression "uVar16 = uVar45 - 0x200000" identifier = (binary_expression "uVar45 - 0x200000" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x100000) == 0)" ( (binary_expression "(uVar19 & 0x100000) == 0" (parenthesized_expression "(uVar19 & 0x100000)" ( (binary_expression "uVar19 & 0x100000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar16 = uVar45;\n          }" { (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar45 = iVar38 - param_11;" (assignment_expression "uVar45 = iVar38 - param_11" identifier = (binary_expression "iVar38 - param_11" identifier - identifier)) ;) (expression_statement "uVar19 = uVar45 >> 2;" (assignment_expression "uVar19 = uVar45 >> 2" identifier = (binary_expression "uVar45 >> 2" identifier >> number_literal)) ;) (if_statement "if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }" if (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) (compound_statement "{\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }" { (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" identifier = (binary_expression "uVar36 ^ uVar19" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);" (assignment_expression "*(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" identifier ^ (parenthesized_expression "((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" ( (binary_expression "(uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "(uVar36 & 0x70000) >> 8" (parenthesized_expression "(uVar36 & 0x70000)" ( (binary_expression "uVar36 & 0x70000" identifier & number_literal) )) >> number_literal) | (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar36 << 0x18" identifier << number_literal)) )))) ;) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar34 = uVar34 & 3;" (assignment_expression "uVar34 = uVar34 & 3" identifier = (binary_expression "uVar34 & 3" identifier & number_literal)) ;) (goto_statement "goto joined_r0x002c6ec7;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (case_statement "case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "switchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }" statement_identifier : (if_statement "if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }" if (parenthesized_expression "(param_3 == 4)" ( (binary_expression "param_3 == 4" identifier == number_literal) )) (compound_statement "{\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }" { (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = uVar36 << 0x10;" (assignment_expression "uVar16 = uVar36 << 0x10" identifier = (binary_expression "uVar36 << 0x10" identifier << number_literal)) ;) (if_statement "if (bVar48 == false) {\n            uVar16 = local_c8;\n          }" if (parenthesized_expression "(bVar48 == false)" ( (binary_expression "bVar48 == false" identifier == false) )) (compound_statement "{\n            uVar16 = local_c8;\n          }" { (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;" (assignment_expression "uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10" identifier = (binary_expression "(iVar38 - param_11) + 0x8000 >> 0x10" (binary_expression "(iVar38 - param_11) + 0x8000" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal) >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar19 = uVar19 ^ uVar36;" (assignment_expression "uVar19 = uVar19 ^ uVar36" identifier = (binary_expression "uVar19 ^ uVar36" identifier ^ identifier)) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;" (assignment_expression "*(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17" (parenthesized_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" ( (binary_expression "(uVar19 & 0xff00) << 8 | uVar19 << 0x18" (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" ( (binary_expression "uVar19 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar19 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) }) (else_clause "else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }" else (compound_statement "{\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }" { (if_statement "if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }" if (parenthesized_expression "(param_3 != 9)" ( (binary_expression "param_3 != 9" identifier != number_literal) )) (compound_statement "{\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }" { (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2eda,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;) })) (expression_statement "lVar30 = FUN_0049cb70(0x40);" (assignment_expression "lVar30 = FUN_0049cb70(0x40)" identifier = (call_expression "FUN_0049cb70(0x40)" identifier (argument_list "(0x40)" ( number_literal )))) ;) (expression_statement "*(undefined1 *)(lVar30 + 0x3c) = 0;" (assignment_expression "*(undefined1 *)(lVar30 + 0x3c) = 0" (pointer_expression "*(undefined1 *)(lVar30 + 0x3c)" * (cast_expression "(undefined1 *)(lVar30 + 0x3c)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x3c)" ( (binary_expression "lVar30 + 0x3c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(undefined4 *)(lVar30 + 0x2c) = 0;" (assignment_expression "*(undefined4 *)(lVar30 + 0x2c) = 0" (pointer_expression "*(undefined4 *)(lVar30 + 0x2c)" * (cast_expression "(undefined4 *)(lVar30 + 0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x2c)" ( (binary_expression "lVar30 + 0x2c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(ulong **)(lVar30 + 0x10) = param_10;" (assignment_expression "*(ulong **)(lVar30 + 0x10) = param_10" (pointer_expression "*(ulong **)(lVar30 + 0x10)" * (cast_expression "(ulong **)(lVar30 + 0x10)" ( (type_descriptor "ulong **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x10)" ( (binary_expression "lVar30 + 0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(long **)(lVar30 + 0x18) = plVar3;" (assignment_expression "*(long **)(lVar30 + 0x18) = plVar3" (pointer_expression "*(long **)(lVar30 + 0x18)" * (cast_expression "(long **)(lVar30 + 0x18)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x18)" ( (binary_expression "lVar30 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(lVar30 + 0x20) = param_9;" (assignment_expression "*(uint **)(lVar30 + 0x20) = param_9" (pointer_expression "*(uint **)(lVar30 + 0x20)" * (cast_expression "(uint **)(lVar30 + 0x20)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x28) = local_c8;" (assignment_expression "*(uint *)(lVar30 + 0x28) = local_c8" (pointer_expression "*(uint *)(lVar30 + 0x28)" * (cast_expression "(uint *)(lVar30 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x28)" ( (binary_expression "lVar30 + 0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x30) = uVar7;" (assignment_expression "*(uint *)(lVar30 + 0x30) = uVar7" (pointer_expression "*(uint *)(lVar30 + 0x30)" * (cast_expression "(uint *)(lVar30 + 0x30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x30)" ( (binary_expression "lVar30 + 0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(bool *)(lVar30 + 0x34) = bVar48;" (assignment_expression "*(bool *)(lVar30 + 0x34) = bVar48" (pointer_expression "*(bool *)(lVar30 + 0x34)" * (cast_expression "(bool *)(lVar30 + 0x34)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x34)" ( (binary_expression "lVar30 + 0x34" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x38) = param_11;" (assignment_expression "*(uint *)(lVar30 + 0x38) = param_11" (pointer_expression "*(uint *)(lVar30 + 0x38)" * (cast_expression "(uint *)(lVar30 + 0x38)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x38)" ( (binary_expression "lVar30 + 0x38" identifier + number_literal) )))) = identifier) ;) (expression_statement "FUN_004a11e0(lVar30,&DAT_0067db00);" (call_expression "FUN_004a11e0(lVar30,&DAT_0067db00)" identifier (argument_list "(lVar30,&DAT_0067db00)" ( identifier , (pointer_expression "&DAT_0067db00" & identifier) ))) ;) (expression_statement "_DAT_0067db10 = _DAT_0067db10 + 1;" (assignment_expression "_DAT_0067db10 = _DAT_0067db10 + 1" identifier = (binary_expression "_DAT_0067db10 + 1" identifier + number_literal)) ;) })))) (break_statement "break;" break ;)) (case_statement "case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6ccf:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar16 = (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar16 = (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) ;) (expression_statement "uVar36 = uVar17 >> 0x18 | uVar16;" (assignment_expression "uVar36 = uVar17 >> 0x18 | uVar16" identifier = (binary_expression "uVar17 >> 0x18 | uVar16" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | identifier)) ;) (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" identifier = identifier) ;) (if_statement "if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }" if (parenthesized_expression "((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0))" ( (binary_expression "(bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)" (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) && (parenthesized_expression "(uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)" ( (comma_expression "uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0" (assignment_expression "uVar19 = uVar36 - 0x10000" identifier = (binary_expression "uVar36 - 0x10000" identifier - number_literal)) , (binary_expression "(uVar16 & 0x8000) == 0" (parenthesized_expression "(uVar16 & 0x8000)" ( (binary_expression "uVar16 & 0x8000" identifier & number_literal) )) == number_literal)) ))) )) (compound_statement "{\n          uVar19 = uVar36;\n        }" { (expression_statement "uVar19 = uVar36;" (assignment_expression "uVar19 = uVar36" identifier = identifier) ;) })) (if_statement "if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }" if (parenthesized_expression "((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00))" ( (binary_expression "(param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)" (parenthesized_expression "(param_3 == 9)" ( (binary_expression "param_3 == 9" identifier == number_literal) )) && (parenthesized_expression "(local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)" ( (comma_expression "local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00" (assignment_expression "local_98 = DAT_0067db00" identifier = identifier) , (binary_expression "(undefined8 **)DAT_0067db00 != &DAT_0067db00" (cast_expression "(undefined8 **)DAT_0067db00" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) != (pointer_expression "&DAT_0067db00" & identifier))) ))) )) (compound_statement "{\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }" { (do_statement "do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);" do (compound_statement "{\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          }" { (if_statement "if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }" if (parenthesized_expression "(uVar7 == *(uint *)(local_98 + 6))" ( (binary_expression "uVar7 == *(uint *)(local_98 + 6)" identifier == (pointer_expression "*(uint *)(local_98 + 6)" * (cast_expression "(uint *)(local_98 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_98 + 6)" ( (binary_expression "local_98 + 6" identifier + number_literal) ))))) )) (compound_statement "{\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }" { (expression_statement "puVar6 = (uint *)local_98[2];" (assignment_expression "puVar6 = (uint *)local_98[2]" identifier = (cast_expression "(uint *)local_98[2]" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_98[2]" identifier [ number_literal ]))) ;) (expression_statement "iVar38 = *(int *)(local_98 + 5);" (assignment_expression "iVar38 = *(int *)(local_98 + 5)" identifier = (pointer_expression "*(int *)(local_98 + 5)" * (cast_expression "(int *)(local_98 + 5)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_98 + 5)" ( (binary_expression "local_98 + 5" identifier + number_literal) ))))) ;) (expression_statement "uVar16 = *puVar6;" (assignment_expression "uVar16 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;" (assignment_expression "uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" identifier = (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" ( (binary_expression "uVar16 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (if_statement "if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }" if (parenthesized_expression "(*(char *)((long)local_98 + 0x34) != '\0')" ( (binary_expression "*(char *)((long)local_98 + 0x34) != '\0'" (pointer_expression "*(char *)((long)local_98 + 0x34)" * (cast_expression "(char *)((long)local_98 + 0x34)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)local_98 + 0x34)" ( (binary_expression "(long)local_98 + 0x34" (cast_expression "(long)local_98" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }" { (expression_statement "iVar38 = uVar19 + uVar45 * 0x10000;" (assignment_expression "iVar38 = uVar19 + uVar45 * 0x10000" identifier = (binary_expression "uVar19 + uVar45 * 0x10000" identifier + (binary_expression "uVar45 * 0x10000" identifier * number_literal))) ;) })) (expression_statement "iVar20 = *(int *)(local_98 + 7);" (assignment_expression "iVar20 = *(int *)(local_98 + 7)" identifier = (pointer_expression "*(int *)(local_98 + 7)" * (cast_expression "(int *)(local_98 + 7)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_98 + 7)" ( (binary_expression "local_98 + 7" identifier + number_literal) ))))) ;) (expression_statement "iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);" (assignment_expression "iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38)" identifier = (call_expression "FUN_001d7270(local_98[4],local_98[3],iVar38)" identifier (argument_list "(local_98[4],local_98[3],iVar38)" ( (subscript_expression "local_98[4]" identifier [ number_literal ]) , (subscript_expression "local_98[3]" identifier [ number_literal ]) , identifier )))) ;) (expression_statement "uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;" (assignment_expression "uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10" identifier = (binary_expression "(uint)((0x8000 - iVar20) + iVar38) >> 0x10" (call_expression "(uint)((0x8000 - iVar20) + iVar38)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((0x8000 - iVar20) + iVar38)" ( (binary_expression "(0x8000 - iVar20) + iVar38" (parenthesized_expression "(0x8000 - iVar20)" ( (binary_expression "0x8000 - iVar20" number_literal - identifier) )) + identifier) ))) >> number_literal)) ;) (if_statement "if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }" if (parenthesized_expression "(bVar49 && bVar50)" ( (binary_expression "bVar49 && bVar50" identifier && identifier) )) (compound_statement "{\n                *(uint *)param_1 = uVar32;\n              }" { (expression_statement "*(uint *)param_1 = uVar32;" (assignment_expression "*(uint *)param_1 = uVar32" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }) (else_clause "else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }" else (compound_statement "{\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }" { (expression_statement "uVar32 = uVar32 ^ uVar45;" (assignment_expression "uVar32 = uVar32 ^ uVar45" identifier = (binary_expression "uVar32 ^ uVar45" identifier ^ identifier)) ;) (expression_statement "*puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;" (assignment_expression "*puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16" (pointer_expression "*puVar6" * identifier) = (binary_expression "((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16" (parenthesized_expression "((uVar32 & 0xff00) << 8 | uVar32 << 0x18)" ( (binary_expression "(uVar32 & 0xff00) << 8 | uVar32 << 0x18" (binary_expression "(uVar32 & 0xff00) << 8" (parenthesized_expression "(uVar32 & 0xff00)" ( (binary_expression "uVar32 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar32 << 0x18" identifier << number_literal)) )) ^ identifier)) ;) }))) (expression_statement "puVar40 = (undefined8 *)*local_98;" (assignment_expression "puVar40 = (undefined8 *)*local_98" identifier = (cast_expression "(undefined8 *)*local_98" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_98" * identifier))) ;) (expression_statement "_DAT_0067db10 = _DAT_0067db10 + -1;" (assignment_expression "_DAT_0067db10 = _DAT_0067db10 + -1" identifier = (binary_expression "_DAT_0067db10 + -1" identifier + number_literal)) ;) (expression_statement "FUN_004a1200(local_98);" (call_expression "FUN_004a1200(local_98)" identifier (argument_list "(local_98)" ( identifier ))) ;) (expression_statement "FUN_0049e340(local_98);" (call_expression "FUN_0049e340(local_98)" identifier (argument_list "(local_98)" ( identifier ))) ;) (expression_statement "local_98 = puVar40;" (assignment_expression "local_98 = puVar40" identifier = identifier) ;) }) (else_clause "else {\n              local_98 = (undefined8 *)*local_98;\n            }" else (compound_statement "{\n              local_98 = (undefined8 *)*local_98;\n            }" { (expression_statement "local_98 = (undefined8 *)*local_98;" (assignment_expression "local_98 = (undefined8 *)*local_98" identifier = (cast_expression "(undefined8 *)*local_98" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_98" * identifier))) ;) }))) }) while (parenthesized_expression "((undefined8 **)local_98 != &DAT_0067db00)" ( (binary_expression "(undefined8 **)local_98 != &DAT_0067db00" (cast_expression "(undefined8 **)local_98" ( (type_descriptor "undefined8 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) != (pointer_expression "&DAT_0067db00" & identifier)) )) ;) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar19)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" identifier (argument_list "(param_9,plVar3,uVar19)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11;" (assignment_expression "uVar19 = iVar38 - param_11" identifier = (binary_expression "iVar38 - param_11" identifier - identifier)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;" (assignment_expression "*(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "(((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17" (parenthesized_expression "(((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18)" ( (binary_expression "((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18" (binary_expression "((uVar19 ^ uVar36) & 0xff00) << 8" (parenthesized_expression "((uVar19 ^ uVar36) & 0xff00)" ( (binary_expression "(uVar19 ^ uVar36) & 0xff00" (parenthesized_expression "(uVar19 ^ uVar36)" ( (binary_expression "uVar19 ^ uVar36" identifier ^ identifier) )) & number_literal) )) << number_literal) | (binary_expression "(uVar19 ^ uVar36) << 0x18" (parenthesized_expression "(uVar19 ^ uVar36)" ( (binary_expression "uVar19 ^ uVar36" identifier ^ identifier) )) << number_literal)) )) ^ identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6bb8:\n        uVar34 = *param_10;" statement_identifier : (expression_statement "uVar34 = *param_10;" (assignment_expression "uVar34 = *param_10" identifier = (pointer_expression "*param_10" * identifier)) ;)) (expression_statement "uVar17 = (uint)uVar34 >> 0x18;" (assignment_expression "uVar17 = (uint)uVar34 >> 0x18" identifier = (binary_expression "(uint)uVar34 >> 0x18" (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier) >> number_literal)) ;) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }" { (expression_statement "uVar16 = uVar17 * 2;" (assignment_expression "uVar16 = uVar17 * 2" identifier = (binary_expression "uVar17 * 2" identifier * number_literal)) ;) (expression_statement "uVar19 = uVar16 & 0xff;" (assignment_expression "uVar19 = uVar16 & 0xff" identifier = (binary_expression "uVar16 & 0xff" identifier & number_literal)) ;) (expression_statement "uVar36 = uVar19 - 0x100;" (assignment_expression "uVar36 = uVar19 - 0x100" identifier = (binary_expression "uVar19 - 0x100" identifier - number_literal)) ;) (if_statement "if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }" if (parenthesized_expression "((uVar16 & 0x80) == 0)" ( (binary_expression "(uVar16 & 0x80) == 0" (parenthesized_expression "(uVar16 & 0x80)" ( (binary_expression "uVar16 & 0x80" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar36 = uVar19;\n          }" { (expression_statement "uVar36 = uVar19;" (assignment_expression "uVar36 = uVar19" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar36)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" identifier (argument_list "(param_9,plVar3,uVar36)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11 >> 1;" (assignment_expression "uVar19 = iVar38 - param_11 >> 1" identifier = (binary_expression "iVar38 - param_11 >> 1" (binary_expression "iVar38 - param_11" identifier - identifier) >> number_literal)) ;) (if_statement "if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (compound_statement "{\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }" { (labeled_statement "LAB_002c78e8:\n          uVar16 = 0;" statement_identifier : (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;)) (expression_statement "*(uint *)param_1 = uVar19;" (assignment_expression "*(uint *)param_1 = uVar19" (pointer_expression "*(uint *)param_1" * (cast_expression "(uint *)param_1" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) }) (else_clause "else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }" else (compound_statement "{\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }" { (expression_statement "*(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;" (assignment_expression "*(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "(uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18" (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier) ^ (binary_expression "((uVar19 ^ uVar17) & 0x7f) << 0x18" (parenthesized_expression "((uVar19 ^ uVar17) & 0x7f)" ( (binary_expression "(uVar19 ^ uVar17) & 0x7f" (parenthesized_expression "(uVar19 ^ uVar17)" ( (binary_expression "uVar19 ^ uVar17" identifier ^ identifier) )) & number_literal) )) << number_literal))) ;) (expression_statement "uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);" (assignment_expression "uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80)" identifier = (call_expression "(uint)(0xff < (iVar38 - param_11) + 0x80)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0xff < (iVar38 - param_11) + 0x80)" ( (binary_expression "0xff < (iVar38 - param_11) + 0x80" number_literal < (binary_expression "(iVar38 - param_11) + 0x80" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) )))) ;) }))) (break_statement "break;" break ;)) (case_statement "case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c6c3e:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar36 * 2;" (assignment_expression "uVar19 = uVar36 * 2" identifier = (binary_expression "uVar36 * 2" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0x7fe;" (assignment_expression "uVar45 = uVar19 & 0x7fe" identifier = (binary_expression "uVar19 & 0x7fe" identifier & number_literal)) ;) (expression_statement "uVar16 = uVar45 - 0x800;" (assignment_expression "uVar16 = uVar45 - 0x800" identifier = (binary_expression "uVar45 - 0x800" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x400) == 0)" ( (binary_expression "(uVar19 & 0x400) == 0" (parenthesized_expression "(uVar19 & 0x400)" ( (binary_expression "uVar19 & 0x400" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar16 = uVar45;\n          }" { (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11 >> 1;" (assignment_expression "uVar19 = iVar38 - param_11 >> 1" identifier = (binary_expression "iVar38 - param_11 >> 1" (binary_expression "iVar38 - param_11" identifier - identifier) >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c78e8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c78e8;" goto statement_identifier ;)) (expression_statement "uVar19 = uVar19 ^ uVar36;" (assignment_expression "uVar19 = uVar19 ^ uVar36" identifier = (binary_expression "uVar19 ^ uVar36" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);" (assignment_expression "*(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18)" identifier ^ (parenthesized_expression "((uVar19 & 0x300) << 8 | uVar19 << 0x18)" ( (binary_expression "(uVar19 & 0x300) << 8 | uVar19 << 0x18" (binary_expression "(uVar19 & 0x300) << 8" (parenthesized_expression "(uVar19 & 0x300)" ( (binary_expression "uVar19 & 0x300" identifier & number_literal) )) << number_literal) | (binary_expression "uVar19 << 0x18" identifier << number_literal)) )))) ;) (expression_statement "uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);" (assignment_expression "uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400)" identifier = (call_expression "(uint)(0x7ff < (iVar38 - param_11) + 0x400)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0x7ff < (iVar38 - param_11) + 0x400)" ( (binary_expression "0x7ff < (iVar38 - param_11) + 0x400" number_literal < (binary_expression "(iVar38 - param_11) + 0x400" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) )))) ;) (break_statement "break;" break ;)) (case_statement "case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (labeled_statement "LAB_002c69c5:\n        uVar17 = (uint)*param_10;" statement_identifier : (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;)) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal))) ;) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" identifier = identifier) ;) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" if (parenthesized_expression "(bVar48 != false)" ( (binary_expression "bVar48 != false" identifier != false) )) (compound_statement "{\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" { (expression_statement "uVar19 = uVar36 * 2;" (assignment_expression "uVar19 = uVar36 * 2" identifier = (binary_expression "uVar36 * 2" identifier * number_literal)) ;) (expression_statement "uVar45 = uVar19 & 0x1fffe;" (assignment_expression "uVar45 = uVar19 & 0x1fffe" identifier = (binary_expression "uVar19 & 0x1fffe" identifier & number_literal)) ;) (expression_statement "uVar16 = uVar45 - 0x20000;" (assignment_expression "uVar16 = uVar45 - 0x20000" identifier = (binary_expression "uVar45 - 0x20000" identifier - number_literal)) ;) (if_statement "if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }" if (parenthesized_expression "((uVar19 & 0x10000) == 0)" ( (binary_expression "(uVar19 & 0x10000) == 0" (parenthesized_expression "(uVar19 & 0x10000)" ( (binary_expression "uVar19 & 0x10000" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            uVar16 = uVar45;\n          }" { (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" identifier = identifier) ;) })) })) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" identifier (argument_list "(param_9,plVar3,uVar16)" ( identifier , identifier , identifier )))) ;) (expression_statement "uVar19 = iVar38 - param_11 >> 1;" (assignment_expression "uVar19 = iVar38 - param_11 >> 1" identifier = (binary_expression "iVar38 - param_11 >> 1" (binary_expression "iVar38 - param_11" identifier - identifier) >> number_literal)) ;) (if_statement "if ((bool)cVar13) goto LAB_002c78e8;" if (parenthesized_expression "((bool)cVar13)" ( (cast_expression "(bool)cVar13" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_002c78e8;" goto statement_identifier ;)) (expression_statement "uVar19 = uVar19 ^ uVar36;" (assignment_expression "uVar19 = uVar19 ^ uVar36" identifier = (binary_expression "uVar19 ^ uVar36" identifier ^ identifier)) ;) (expression_statement "*(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);" (assignment_expression "*(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" (pointer_expression "*(uint *)param_10" * (cast_expression "(uint *)param_10" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" identifier ^ (parenthesized_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" ( (binary_expression "(uVar19 & 0xff00) << 8 | uVar19 << 0x18" (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" ( (binary_expression "uVar19 & 0xff00" identifier & number_literal) )) << number_literal) | (binary_expression "uVar19 << 0x18" identifier << number_literal)) )))) ;) (expression_statement "uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);" (assignment_expression "uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000)" identifier = (call_expression "(uint)(0x1ffff < (iVar38 - param_11) + 0x10000)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(0x1ffff < (iVar38 - param_11) + 0x10000)" ( (binary_expression "0x1ffff < (iVar38 - param_11) + 0x10000" number_literal < (binary_expression "(iVar38 - param_11) + 0x10000" (parenthesized_expression "(iVar38 - param_11)" ( (binary_expression "iVar38 - param_11" identifier - identifier) )) + number_literal)) )))) ;) (break_statement "break;" break ;)) (case_statement "case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;" case number_literal : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" identifier = identifier) ;) (labeled_statement "LAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);" statement_identifier : (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar17)" identifier = (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" identifier (argument_list "(param_9,plVar3,uVar17)" ( identifier , identifier , identifier )))) ;)) (expression_statement "uVar19 = iVar38 - param_11;" (assignment_expression "uVar19 = iVar38 - param_11" identifier = (binary_expression "iVar38 - param_11" identifier - identifier)) ;) (if_statement "if (!bVar49 || !bVar50) goto LAB_002c5ccb;" if (parenthesized_expression "(!bVar49 || !bVar50)" ( (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" ! identifier) || (unary_expression "!bVar50" ! identifier)) )) (goto_statement "goto LAB_002c5ccb;" goto statement_identifier ;)) (goto_statement "goto LAB_002c59a8;" goto statement_identifier ;)) })) (labeled_statement "LAB_002c5940:\n      puVar44 = puVar44 + 1;" statement_identifier : (expression_statement "puVar44 = puVar44 + 1;" (assignment_expression "puVar44 = puVar44 + 1" identifier = (binary_expression "puVar44 + 1" identifier + number_literal)) ;)) (if_statement "if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }" if (parenthesized_expression "((uint *)&local_78 == puVar44)" ( (binary_expression "(uint *)&local_78 == puVar44" (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier)) == identifier) )) (compound_statement "{\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }" { (labeled_statement "LAB_002c5380:\n        uVar17 = uVar47 - 0x85;" statement_identifier : (expression_statement "uVar17 = uVar47 - 0x85;" (assignment_expression "uVar17 = uVar47 - 0x85" identifier = (binary_expression "uVar47 - 0x85" identifier - number_literal)) ;)) (if_statement "if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }" if (parenthesized_expression "(local_f4 < 0xd)" ( (binary_expression "local_f4 < 0xd" identifier < number_literal) )) (compound_statement "{\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }" { (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;" (assignment_expression "uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" identifier = (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal))) ;) (expression_statement "uVar45 = (uVar36 & 0xff00) << 8;" (assignment_expression "uVar45 = (uVar36 & 0xff00) << 8" identifier = (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" ( (binary_expression "uVar36 & 0xff00" identifier & number_literal) )) << number_literal)) ;) (expression_statement "uVar32 = uVar36 << 0x18;" (assignment_expression "uVar32 = uVar36 << 0x18" identifier = (binary_expression "uVar36 << 0x18" identifier << number_literal)) ;) (expression_statement "uVar31 = uVar19 | uVar45 | uVar32;" (assignment_expression "uVar31 = uVar19 | uVar45 | uVar32" identifier = (binary_expression "uVar19 | uVar45 | uVar32" (binary_expression "uVar19 | uVar45" identifier | identifier) | identifier)) ;) (expression_statement "uVar29 = (ushort)(uVar31 >> 0x10);" (assignment_expression "uVar29 = (ushort)(uVar31 >> 0x10)" identifier = (call_expression "(ushort)(uVar31 >> 0x10)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(uVar31 >> 0x10)" ( (binary_expression "uVar31 >> 0x10" identifier >> number_literal) )))) ;) (expression_statement "uVar15 = (ushort)(uVar32 >> 0x10);" (assignment_expression "uVar15 = (ushort)(uVar32 >> 0x10)" identifier = (call_expression "(ushort)(uVar32 >> 0x10)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(uVar32 >> 0x10)" ( (binary_expression "uVar32 >> 0x10" identifier >> number_literal) )))) ;) (if_statement "if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }" if (parenthesized_expression "(uVar17 < 0x29)" ( (binary_expression "uVar17 < 0x29" identifier < number_literal) )) (compound_statement "{\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }" { (if_statement "if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }" if (parenthesized_expression "((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0)" ( (binary_expression "(0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0" (parenthesized_expression "(0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1)" ( (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f)" number_literal >> (parenthesized_expression "((ulong)uVar17 & 0x3f)" ( (binary_expression "(ulong)uVar17 & 0x3f" (cast_expression "(ulong)uVar17" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) ))) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }" { (labeled_statement "LAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);" statement_identifier : (expression_statement "uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);" (assignment_expression "uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13)" identifier = (binary_expression "uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13)" (binary_expression "uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0" (binary_expression "uVar15 & 0xf800" identifier & number_literal) | (binary_expression "(ushort)uVar19 & 0x7e0" (cast_expression "(ushort)uVar19" ( (type_descriptor "ushort" type_identifier) ) identifier) & number_literal)) | (call_expression "(ushort)((uVar36 & 0xff0000) >> 0x13)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "((uVar36 & 0xff0000) >> 0x13)" ( (binary_expression "(uVar36 & 0xff0000) >> 0x13" (parenthesized_expression "(uVar36 & 0xff0000)" ( (binary_expression "uVar36 & 0xff0000" identifier & number_literal) )) >> number_literal) ))))) ;)) (expression_statement "uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;" (assignment_expression "uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f" identifier = (binary_expression "(uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f" (binary_expression "(uVar45 | uVar32) >> 0xb" (parenthesized_expression "(uVar45 | uVar32)" ( (binary_expression "uVar45 | uVar32" identifier | identifier) )) >> number_literal) | (binary_expression "uVar36 >> 0x18 & 0x1f" (binary_expression "uVar36 >> 0x18" identifier >> number_literal) & number_literal))) ;) })) }) (else_clause "else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }" else (if_statement "if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }" if (parenthesized_expression "(((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100))" ( (binary_expression "((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)" (parenthesized_expression "((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4)" ( (binary_expression "(uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4" (parenthesized_expression "(uVar47 == 0x85 || uVar47 == 100)" ( (binary_expression "uVar47 == 0x85 || uVar47 == 100" (binary_expression "uVar47 == 0x85" identifier == number_literal) || (binary_expression "uVar47 == 100" identifier == number_literal)) )) || (binary_expression "uVar47 == 4" identifier == number_literal)) )) || (parenthesized_expression "(uVar47 != 100)" ( (binary_expression "uVar47 != 100" identifier != number_literal) ))) )) (compound_statement "{\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }" { (if_statement "if (uVar47 != 100) goto LAB_002c5754;" if (parenthesized_expression "(uVar47 != 100)" ( (binary_expression "uVar47 != 100" identifier != number_literal) )) (goto_statement "goto LAB_002c5754;" goto statement_identifier ;)) (expression_statement "uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;" (assignment_expression "uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00" identifier = (binary_expression "uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00" (binary_expression "uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb)" (binary_expression "uVar29 >> 5 & 0x1f" (binary_expression "uVar29 >> 5" identifier >> number_literal) & number_literal) | (call_expression "(ushort)((uVar45 & 0x1f0000) >> 0xb)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "((uVar45 & 0x1f0000) >> 0xb)" ( (binary_expression "(uVar45 & 0x1f0000) >> 0xb" (parenthesized_expression "(uVar45 & 0x1f0000)" ( (binary_expression "uVar45 & 0x1f0000" identifier & number_literal) )) >> number_literal) )))) | (binary_expression "uVar15 & 0xfc00" identifier & number_literal))) ;) })))) (labeled_statement "LAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;" statement_identifier : (expression_statement "*(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;" (assignment_expression "*(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" * (cast_expression "(ushort *)((long)param_10 + 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_10 + 2)" ( (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = (binary_expression "(ushort)uVar31 << 8 | (ushort)uVar31 >> 8" (binary_expression "(ushort)uVar31 << 8" (cast_expression "(ushort)uVar31" ( (type_descriptor "ushort" type_identifier) ) identifier) << number_literal) | (binary_expression "(ushort)uVar31 >> 8" (cast_expression "(ushort)uVar31" ( (type_descriptor "ushort" type_identifier) ) identifier) >> number_literal))) ;)) (expression_statement "*(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;" (assignment_expression "*(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8" (pointer_expression "*(ushort *)param_10" * (cast_expression "(ushort *)param_10" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "uVar29 << 8 | uVar29 >> 8" (binary_expression "uVar29 << 8" identifier << number_literal) | (binary_expression "uVar29 >> 8" identifier >> number_literal))) ;) }) (else_clause "else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }" else (if_statement "if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }" if (parenthesized_expression "(((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b))" ( (binary_expression "((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)" (parenthesized_expression "((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0))" ( (binary_expression "(uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)" (parenthesized_expression "(uVar17 < 0x29)" ( (binary_expression "uVar17 < 0x29" identifier < number_literal) )) && (parenthesized_expression "((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)" ( (binary_expression "(0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0" (parenthesized_expression "(0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1)" ( (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f)" number_literal >> (parenthesized_expression "((ulong)uVar17 & 0x3f)" ( (binary_expression "(ulong)uVar17 & 0x3f" (cast_expression "(ulong)uVar17" ( (type_descriptor "ulong" type_identifier) ) identifier) & number_literal) ))) & number_literal) )) != number_literal) ))) )) && (parenthesized_expression "(1 < uVar47 - 0x8b)" ( (binary_expression "1 < uVar47 - 0x8b" number_literal < (binary_expression "uVar47 - 0x8b" identifier - number_literal)) ))) )) (compound_statement "{\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }" { (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" identifier = (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;" (assignment_expression "uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (expression_statement "uVar29 = (ushort)(uVar31 >> 0x10);" (assignment_expression "uVar29 = (ushort)(uVar31 >> 0x10)" identifier = (call_expression "(ushort)(uVar31 >> 0x10)" (parenthesized_expression "(ushort)" ( identifier )) (argument_list "(uVar31 >> 0x10)" ( (binary_expression "uVar31 >> 0x10" identifier >> number_literal) )))) ;) (goto_statement "goto LAB_002c5471;" goto statement_identifier ;) })))) (if_statement "if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }" if (parenthesized_expression "(uVar16 == 1)" ( (binary_expression "uVar16 == 1" identifier == number_literal) )) (compound_statement "{\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }" { (if_statement "if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }" { (expression_statement "lVar30 = plVar3[1];" (assignment_expression "lVar30 = plVar3[1]" identifier = (subscript_expression "plVar3[1]" identifier [ number_literal ])) ;) (expression_statement "uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");" (assignment_expression "uVar21 = gettext("relocation overflow: %u against local symbol %u in %s")" identifier = (call_expression "gettext("relocation overflow: %u against local symbol %u in %s")" identifier (argument_list "("relocation overflow: %u against local symbol %u in %s")" ( (string_literal ""relocation overflow: %u against local symbol %u in %s"" " string_content ") )))) ;) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30)" identifier (argument_list "(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30)" ( identifier , identifier , identifier , identifier , identifier , identifier , identifier ))) ;) }) (else_clause "else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }" else (compound_statement "{\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }" { (if_statement "if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }" if (parenthesized_expression "((*(byte *)((long)param_8 + 0x3a) & 7) == 0)" ( (binary_expression "(*(byte *)((long)param_8 + 0x3a) & 7) == 0" (parenthesized_expression "(*(byte *)((long)param_8 + 0x3a) & 7)" ( (binary_expression "*(byte *)((long)param_8 + 0x3a) & 7" (pointer_expression "*(byte *)((long)param_8 + 0x3a)" * (cast_expression "(byte *)((long)param_8 + 0x3a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x3a)" ( (binary_expression "(long)param_8 + 0x3a" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }" { (if_statement "if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }" if (parenthesized_expression "((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0)" ( (binary_expression "(*(byte *)((long)param_8 + 0x3b) & 0x20) == 0" (parenthesized_expression "(*(byte *)((long)param_8 + 0x3b) & 0x20)" ( (binary_expression "*(byte *)((long)param_8 + 0x3b) & 0x20" (pointer_expression "*(byte *)((long)param_8 + 0x3b)" * (cast_expression "(byte *)((long)param_8 + 0x3b)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x3b)" ( (binary_expression "(long)param_8 + 0x3b" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }" { (expression_statement "bVar52 = FUN_00443190();" (assignment_expression "bVar52 = FUN_00443190()" identifier = (call_expression "FUN_00443190()" identifier (argument_list "()" ( )))) ;) (expression_statement "bVar52 = bVar52 ^ 1;" (assignment_expression "bVar52 = bVar52 ^ 1" identifier = (binary_expression "bVar52 ^ 1" identifier ^ number_literal)) ;) }) (else_clause "else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }" else (compound_statement "{\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }" { (expression_statement "bVar52 = *(int *)(param_8 + 3) != 0;" (assignment_expression "bVar52 = *(int *)(param_8 + 3) != 0" identifier = (binary_expression "*(int *)(param_8 + 3) != 0" (pointer_expression "*(int *)(param_8 + 3)" * (cast_expression "(int *)(param_8 + 3)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 3)" ( (binary_expression "param_8 + 3" identifier + number_literal) )))) != number_literal)) ;) }))) }) (else_clause "else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }" else (compound_statement "{\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }" { (expression_statement "bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;" (assignment_expression "bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4" identifier = (binary_expression "(*(byte *)((long)param_8 + 0x3a) & 7) != 4" (parenthesized_expression "(*(byte *)((long)param_8 + 0x3a) & 7)" ( (binary_expression "*(byte *)((long)param_8 + 0x3a) & 7" (pointer_expression "*(byte *)((long)param_8 + 0x3a)" * (cast_expression "(byte *)((long)param_8 + 0x3a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x3a)" ( (binary_expression "(long)param_8 + 0x3a" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) )) != number_literal)) ;) }))) (if_statement "if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }" if (parenthesized_expression "((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0))" ( (binary_expression "(bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)" (parenthesized_expression "(bVar52 == 0)" ( (binary_expression "bVar52 == 0" identifier == number_literal) )) || (parenthesized_expression "((*(byte *)((long)param_8 + 0x3a) & 7) != 0)" ( (binary_expression "(*(byte *)((long)param_8 + 0x3a) & 7) != 0" (parenthesized_expression "(*(byte *)((long)param_8 + 0x3a) & 7)" ( (binary_expression "*(byte *)((long)param_8 + 0x3a) & 7" (pointer_expression "*(byte *)((long)param_8 + 0x3a)" * (cast_expression "(byte *)((long)param_8 + 0x3a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x3a)" ( (binary_expression "(long)param_8 + 0x3a" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }" { (expression_statement "FUN_004443d0(local_58,param_8);" (call_expression "FUN_004443d0(local_58,param_8)" identifier (argument_list "(local_58,param_8)" ( identifier , identifier ))) ;) (expression_statement "puVar8 = local_58[0];" (assignment_expression "puVar8 = local_58[0]" identifier = (subscript_expression "local_58[0]" identifier [ number_literal ])) ;) (expression_statement "uVar21 = gettext("relocation overflow: %u against \'%s\'");" (assignment_expression "uVar21 = gettext("relocation overflow: %u against \'%s\'")" identifier = (call_expression "gettext("relocation overflow: %u against \'%s\'")" identifier (argument_list "("relocation overflow: %u against \'%s\'")" ( (string_literal ""relocation overflow: %u against \'%s\'"" " string_content escape_sequence string_content escape_sequence ") )))) ;) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8)" identifier (argument_list "(param_2,param_6,uVar35,uVar21,uVar47,puVar8)" ( identifier , identifier , identifier , identifier , identifier , identifier ))) ;) (if_statement "if (local_58[0] == auStack_48) goto LAB_002c53ec;" if (parenthesized_expression "(local_58[0] == auStack_48)" ( (binary_expression "local_58[0] == auStack_48" (subscript_expression "local_58[0]" identifier [ number_literal ]) == identifier) )) (goto_statement "goto LAB_002c53ec;" goto statement_identifier ;)) }) (else_clause "else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }" else (compound_statement "{\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }" { (expression_statement "uVar21 = *(undefined8 *)(param_8[2] + 8);" (assignment_expression "uVar21 = *(undefined8 *)(param_8[2] + 8)" identifier = (pointer_expression "*(undefined8 *)(param_8[2] + 8)" * (cast_expression "(undefined8 *)(param_8[2] + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8[2] + 8)" ( (binary_expression "param_8[2] + 8" (subscript_expression "param_8[2]" identifier [ number_literal ]) + number_literal) ))))) ;) (expression_statement "FUN_004443d0(local_58,param_8);" (call_expression "FUN_004443d0(local_58,param_8)" identifier (argument_list "(local_58,param_8)" ( identifier , identifier ))) ;) (expression_statement "puVar8 = local_58[0];" (assignment_expression "puVar8 = local_58[0]" identifier = (subscript_expression "local_58[0]" identifier [ number_literal ])) ;) (expression_statement "uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");" (assignment_expression "uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s")" identifier = (call_expression "gettext("relocation overflow: %u against \'%s\' defined in %s")" identifier (argument_list "("relocation overflow: %u against \'%s\' defined in %s")" ( (string_literal ""relocation overflow: %u against \'%s\' defined in %s"" " string_content escape_sequence string_content escape_sequence string_content ") )))) ;) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21)" identifier (argument_list "(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21)" ( identifier , identifier , identifier , identifier , identifier , identifier , identifier ))) ;) (if_statement "if (local_58[0] == auStack_48) goto LAB_002c53ec;" if (parenthesized_expression "(local_58[0] == auStack_48)" ( (binary_expression "local_58[0] == auStack_48" (subscript_expression "local_58[0]" identifier [ number_literal ]) == identifier) )) (goto_statement "goto LAB_002c53ec;" goto statement_identifier ;)) }))) (expression_statement "FUN_0049e340();" (call_expression "FUN_0049e340()" identifier (argument_list "()" ( ))) ;) }))) }) (else_clause "else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }" else (if_statement "if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }" if (parenthesized_expression "(uVar16 != 0)" ( (binary_expression "uVar16 != 0" identifier != number_literal) )) (compound_statement "{\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }" { (if_statement "if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }" if (parenthesized_expression "(uVar16 == 2)" ( (binary_expression "uVar16 == 2" identifier == number_literal) )) (compound_statement "{\n            pcVar42 = "unexpected opcode while processing relocation";\n          }" { (expression_statement "pcVar42 = "unexpected opcode while processing relocation";" (assignment_expression "pcVar42 = "unexpected opcode while processing relocation"" identifier = (string_literal ""unexpected opcode while processing relocation"" " string_content ")) ;) }) (else_clause "else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }" else (compound_statement "{\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }" { (if_statement "if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }" if (parenthesized_expression "(uVar16 != 3)" ( (binary_expression "uVar16 != 3" identifier != number_literal) )) (compound_statement "{\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }" { (expression_statement "FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x3035,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x3035,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;) })) (expression_statement "pcVar42 = "unaligned PC-relative relocation";" (assignment_expression "pcVar42 = "unaligned PC-relative relocation"" identifier = (string_literal ""unaligned PC-relative relocation"" " string_content ")) ;) }))) (expression_statement "uVar21 = gettext(pcVar42);" (assignment_expression "uVar21 = gettext(pcVar42)" identifier = (call_expression "gettext(pcVar42)" identifier (argument_list "(pcVar42)" ( identifier )))) ;) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21)" identifier (argument_list "(param_2,param_6,uVar35,uVar21)" ( identifier , identifier , identifier , identifier ))) ;) })))) (labeled_statement "LAB_002c53ec:\n        FUN_001a5bc0(&local_78);" statement_identifier : (expression_statement "FUN_001a5bc0(&local_78);" (call_expression "FUN_001a5bc0(&local_78)" identifier (argument_list "(&local_78)" ( (pointer_expression "&local_78" & identifier) ))) ;)) (return_statement "return 1;" return number_literal ;) })) (expression_statement "uVar17 = *puVar44;" (assignment_expression "uVar17 = *puVar44" identifier = (pointer_expression "*puVar44" * identifier)) ;) (goto_statement "goto LAB_002c4f1d;" goto statement_identifier ;) })) (expression_statement "FUN_00290a30();" (call_expression "FUN_00290a30()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_002c8217;" goto statement_identifier ;) })) (goto_statement "goto LAB_002c52f0;" goto statement_identifier ;) (labeled_statement "LAB_002c82c4:\n  FUN_00293370();" statement_identifier : (expression_statement "FUN_00293370();" (call_expression "FUN_00293370()" identifier (argument_list "()" ( ))) ;)) (labeled_statement "LAB_002c82c9:\n  uVar36 = (uint)uVar34;" statement_identifier : (expression_statement "uVar36 = (uint)uVar34;" (assignment_expression "uVar36 = (uint)uVar34" identifier = (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier)) ;)) (if_statement "if ((char)puVar44 == '\0') {\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }\n  else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }\n  }" if (parenthesized_expression "((char)puVar44 == '\0')" ( (binary_expression "(char)puVar44 == '\0'" (cast_expression "(char)puVar44" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }" { (labeled_statement "LAB_002c5869:\n    lVar30 = param_8[0x10];" statement_identifier : (expression_statement "lVar30 = param_8[0x10];" (assignment_expression "lVar30 = param_8[0x10]" identifier = (subscript_expression "param_8[0x10]" identifier [ number_literal ])) ;)) (labeled_statement "LAB_002c5870:\n    local_d0 = (uint *)&local_78;" statement_identifier : (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;)) (expression_statement "local_68 = FUN_00298450(lVar30,lVar30 + 8);" (assignment_expression "local_68 = FUN_00298450(lVar30,lVar30 + 8)" identifier = (call_expression "FUN_00298450(lVar30,lVar30 + 8)" identifier (argument_list "(lVar30,lVar30 + 8)" ( identifier , (binary_expression "lVar30 + 8" identifier + number_literal) )))) ;) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) (expression_statement "bVar48 = true;" (assignment_expression "bVar48 = true" identifier = true) ;) (expression_statement "local_e1 = true;" (assignment_expression "local_e1 = true" identifier = true) ;) }) (else_clause "else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }\n  }" else (compound_statement "{\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }\n  }" { (labeled_statement "LAB_002c4d83:\n    uVar36 = (uint)uVar34;" statement_identifier : (expression_statement "uVar36 = (uint)uVar34;" (assignment_expression "uVar36 = (uint)uVar34" identifier = (cast_expression "(uint)uVar34" ( (type_descriptor "uint" type_identifier) ) identifier)) ;)) (if_statement "if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;" if (parenthesized_expression "(*(int *)((long)param_8 + 0x4c) != -1)" ( (binary_expression "*(int *)((long)param_8 + 0x4c) != -1" (pointer_expression "*(int *)((long)param_8 + 0x4c)" * (cast_expression "(int *)((long)param_8 + 0x4c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x4c)" ( (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_002c5256;" goto statement_identifier ;)) (expression_statement "bVar48 = true;" (assignment_expression "bVar48 = true" identifier = true) ;) (labeled_statement "LAB_002c4d98:\n    local_d0 = (uint *)&local_78;" statement_identifier : (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;)) (if_statement "if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }" if (parenthesized_expression "(((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1))" ( (binary_expression "((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)" (parenthesized_expression "((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1))" ( (binary_expression "(*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)" (parenthesized_expression "(*(int *)((long)param_8 + 0x24) != -1)" ( (binary_expression "*(int *)((long)param_8 + 0x24) != -1" (pointer_expression "*(int *)((long)param_8 + 0x24)" * (cast_expression "(int *)((long)param_8 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x24)" ( (binary_expression "(long)param_8 + 0x24" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != number_literal) )) && (parenthesized_expression "(*(int *)((long)param_8 + 0x6c) != -1)" ( (binary_expression "*(int *)((long)param_8 + 0x6c) != -1" (pointer_expression "*(int *)((long)param_8 + 0x6c)" * (cast_expression "(int *)((long)param_8 + 0x6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x6c)" ( (binary_expression "(long)param_8 + 0x6c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(*(int *)(param_8 + 0xd) != -1)" ( (binary_expression "*(int *)(param_8 + 0xd) != -1" (pointer_expression "*(int *)(param_8 + 0xd)" * (cast_expression "(int *)(param_8 + 0xd)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_8 + 0xd)" ( (binary_expression "param_8 + 0xd" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }" { (expression_statement "lVar30 = *(long *)(param_4 + 0x30);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x30)" identifier = (pointer_expression "*(long *)(param_4 + 0x30)" * (cast_expression "(long *)(param_4 + 0x30)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x30)" ( (binary_expression "param_4 + 0x30" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 == 0) goto LAB_002c833d;" if (parenthesized_expression "(lVar30 == 0)" ( (binary_expression "lVar30 == 0" identifier == number_literal) )) (goto_statement "goto LAB_002c833d;" goto statement_identifier ;)) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }" if (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) != 0)" ( (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) != 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" ( (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" * (cast_expression "(byte *)(lVar30 + 0x20)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }" { (expression_statement "local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);" (assignment_expression "local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8)" identifier = (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1" (pointer_expression "*(int *)((long)param_8 + 0x6c)" * (cast_expression "(int *)((long)param_8 + 0x6c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)param_8 + 0x6c)" ( (binary_expression "(long)param_8 + 0x6c" (cast_expression "(long)param_8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) + number_literal) + (pointer_expression "*(int *)(lVar30 + 0x68)" * (cast_expression "(int *)(lVar30 + 0x68)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x68)" ( (binary_expression "lVar30 + 0x68" identifier + number_literal) ))))) + (pointer_expression "*(int *)(lVar30 + 0x60)" * (cast_expression "(int *)(lVar30 + 0x60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x60)" ( (binary_expression "lVar30 + 0x60" identifier + number_literal) ))))) + (pointer_expression "*(int *)(lVar30 + 8)" * (cast_expression "(int *)(lVar30 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 8)" ( (binary_expression "lVar30 + 8" identifier + number_literal) )))))) ;) (if_statement "if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }" if (parenthesized_expression "(*(char *)(param_4 + 0x14) != '\0')" ( (binary_expression "*(char *)(param_4 + 0x14) != '\0'" (pointer_expression "*(char *)(param_4 + 0x14)" * (cast_expression "(char *)(param_4 + 0x14)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x14)" ( (binary_expression "param_4 + 0x14" identifier + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }" { (expression_statement "bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;" (assignment_expression "bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0" identifier = (binary_expression "(*(uint *)(param_4 + 0x10) & 0x2000000) == 0" (parenthesized_expression "(*(uint *)(param_4 + 0x10) & 0x2000000)" ( (binary_expression "*(uint *)(param_4 + 0x10) & 0x2000000" (pointer_expression "*(uint *)(param_4 + 0x10)" * (cast_expression "(uint *)(param_4 + 0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x10)" ( (binary_expression "param_4 + 0x10" identifier + number_literal) )))) & number_literal) )) == number_literal)) ;) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) (expression_statement "puVar44 = (uint *)(ulong)bVar49;" (assignment_expression "puVar44 = (uint *)(ulong)bVar49" identifier = (cast_expression "(uint *)(ulong)bVar49" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(ulong)bVar49" ( (type_descriptor "ulong" type_identifier) ) identifier))) ;) (expression_statement "uVar17 = (uint)!bVar49;" (assignment_expression "uVar17 = (uint)!bVar49" identifier = (cast_expression "(uint)!bVar49" ( (type_descriptor "uint" type_identifier) ) (unary_expression "!bVar49" ! identifier))) ;) (goto_statement "goto LAB_002c4e20;" goto statement_identifier ;) })) (labeled_statement "LAB_002c83ab:\n        FUN_00290d80();" statement_identifier : (expression_statement "FUN_00290d80();" (call_expression "FUN_00290d80()" identifier (argument_list "()" ( ))) ;)) })) (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" identifier (argument_list "()" ( ))) ;) })) }))) (labeled_statement "LAB_002c4e20:\n  local_98._0_1_ = (byte)uVar17;" statement_identifier : (expression_statement "local_98._0_1_ = (byte)uVar17;" (assignment_expression "local_98._0_1_ = (byte)uVar17" (field_expression "local_98._0_1_" identifier . field_identifier) = (cast_expression "(byte)uVar17" ( (type_descriptor "byte" type_identifier) ) identifier)) ;)) (expression_statement "bVar49 = (bool)((byte)local_98 & bVar48);" (assignment_expression "bVar49 = (bool)((byte)local_98 & bVar48)" identifier = (cast_expression "(bool)((byte)local_98 & bVar48)" ( (type_descriptor "bool" primitive_type) ) (parenthesized_expression "((byte)local_98 & bVar48)" ( (binary_expression "(byte)local_98 & bVar48" (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier) & identifier) )))) ;) (goto_statement "goto joined_r0x002c52d3;" goto statement_identifier ;) (labeled_statement "switchD_002c4f87_caseD_9:\n  bVar48 = false;" statement_identifier : (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" identifier = false) ;)) (labeled_statement "switchD_002c5379_caseD_9:\n  if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }" statement_identifier : (if_statement "if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }" if (parenthesized_expression "(param_8 == (undefined8 *)0x0)" ( (binary_expression "param_8 == (undefined8 *)0x0" identifier == (cast_expression "(undefined8 *)0x0" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }" { (if_statement "if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }" if (parenthesized_expression "(param_3 == 4)" ( (binary_expression "param_3 == 4" identifier == number_literal) )) (compound_statement "{\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }" { (expression_statement "uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);" (assignment_expression "uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1)" identifier = (call_expression "FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1)" identifier (argument_list "(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1)" ( identifier , identifier , identifier , identifier , identifier , number_literal , identifier , identifier , identifier )))) ;) }) (else_clause "else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }" else (compound_statement "{\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }" { (if_statement "if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }" if (parenthesized_expression "(param_3 != 9)" ( (binary_expression "param_3 != 9" identifier != number_literal) )) (compound_statement "{\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }" { (labeled_statement "LAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");" statement_identifier : (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate")" identifier (argument_list "("../../gold/mips.cc",0x2f66,"relocate")" ( (string_literal ""../../gold/mips.cc"" " string_content ") , number_literal , (string_literal ""relocate"" " string_content ") ))) ;)) })) (expression_statement "lVar30 = FUN_0049cb70(0x40);" (assignment_expression "lVar30 = FUN_0049cb70(0x40)" identifier = (call_expression "FUN_0049cb70(0x40)" identifier (argument_list "(0x40)" ( number_literal )))) ;) (expression_statement "*(undefined1 *)(lVar30 + 0x3c) = 0;" (assignment_expression "*(undefined1 *)(lVar30 + 0x3c) = 0" (pointer_expression "*(undefined1 *)(lVar30 + 0x3c)" * (cast_expression "(undefined1 *)(lVar30 + 0x3c)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x3c)" ( (binary_expression "lVar30 + 0x3c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" identifier = number_literal) ;) (expression_statement "*(undefined4 *)(lVar30 + 0x38) = 0;" (assignment_expression "*(undefined4 *)(lVar30 + 0x38) = 0" (pointer_expression "*(undefined4 *)(lVar30 + 0x38)" * (cast_expression "(undefined4 *)(lVar30 + 0x38)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x38)" ( (binary_expression "lVar30 + 0x38" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(ulong **)(lVar30 + 0x10) = param_10;" (assignment_expression "*(ulong **)(lVar30 + 0x10) = param_10" (pointer_expression "*(ulong **)(lVar30 + 0x10)" * (cast_expression "(ulong **)(lVar30 + 0x10)" ( (type_descriptor "ulong **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x10)" ( (binary_expression "lVar30 + 0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(long **)(lVar30 + 0x18) = plVar3;" (assignment_expression "*(long **)(lVar30 + 0x18) = plVar3" (pointer_expression "*(long **)(lVar30 + 0x18)" * (cast_expression "(long **)(lVar30 + 0x18)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x18)" ( (binary_expression "lVar30 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(lVar30 + 0x20) = param_9;" (assignment_expression "*(uint **)(lVar30 + 0x20) = param_9" (pointer_expression "*(uint **)(lVar30 + 0x20)" * (cast_expression "(uint **)(lVar30 + 0x20)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(lVar30 + 0x20)" ( (binary_expression "lVar30 + 0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x28) = local_c8;" (assignment_expression "*(uint *)(lVar30 + 0x28) = local_c8" (pointer_expression "*(uint *)(lVar30 + 0x28)" * (cast_expression "(uint *)(lVar30 + 0x28)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x28)" ( (binary_expression "lVar30 + 0x28" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x2c) = uVar17;" (assignment_expression "*(uint *)(lVar30 + 0x2c) = uVar17" (pointer_expression "*(uint *)(lVar30 + 0x2c)" * (cast_expression "(uint *)(lVar30 + 0x2c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x2c)" ( (binary_expression "lVar30 + 0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(lVar30 + 0x30) = uVar7;" (assignment_expression "*(uint *)(lVar30 + 0x30) = uVar7" (pointer_expression "*(uint *)(lVar30 + 0x30)" * (cast_expression "(uint *)(lVar30 + 0x30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x30)" ( (binary_expression "lVar30 + 0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(bool *)(lVar30 + 0x34) = bVar48;" (assignment_expression "*(bool *)(lVar30 + 0x34) = bVar48" (pointer_expression "*(bool *)(lVar30 + 0x34)" * (cast_expression "(bool *)(lVar30 + 0x34)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar30 + 0x34)" ( (binary_expression "lVar30 + 0x34" identifier + number_literal) )))) = identifier) ;) (expression_statement "FUN_004a11e0(lVar30,&DAT_0067db20);" (call_expression "FUN_004a11e0(lVar30,&DAT_0067db20)" identifier (argument_list "(lVar30,&DAT_0067db20)" ( identifier , (pointer_expression "&DAT_0067db20" & identifier) ))) ;) (expression_statement "_DAT_0067db30 = _DAT_0067db30 + 1;" (assignment_expression "_DAT_0067db30 = _DAT_0067db30 + 1" identifier = (binary_expression "_DAT_0067db30 + 1" identifier + number_literal)) ;) }))) (goto_statement "goto LAB_002c624f;" goto statement_identifier ;) }))) (if_statement "if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8333;" if (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" ( (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_002c8333;" goto statement_identifier ;)) (expression_statement "puVar40 = param_8;" (assignment_expression "puVar40 = param_8" identifier = identifier) ;) (expression_statement "local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3)" identifier = (call_expression "FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3)" identifier (argument_list "(*(long *)(param_4 + 0x20),param_8,0,plVar3)" ( (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) )))) , identifier , number_literal , identifier )))) ;) (expression_statement "local_98._0_1_ = (byte)puVar40;" (assignment_expression "local_98._0_1_ = (byte)puVar40" (field_expression "local_98._0_1_" identifier . field_identifier) = (cast_expression "(byte)puVar40" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" identifier = (pointer_expression "*(long *)(param_4 + 0x20)" * (cast_expression "(long *)(param_4 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_4 + 0x20)" ( (binary_expression "param_4 + 0x20" identifier + number_literal) ))))) ;) (if_statement "if (lVar30 != 0) goto LAB_002c6206;" if (parenthesized_expression "(lVar30 != 0)" ( (binary_expression "lVar30 != 0" identifier != number_literal) )) (goto_statement "goto LAB_002c6206;" goto statement_identifier ;)) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_002c6490:\n  uVar17 = (uint)(byte)local_98;" statement_identifier : (expression_statement "uVar17 = (uint)(byte)local_98;" (assignment_expression "uVar17 = (uint)(byte)local_98" identifier = (cast_expression "(uint)(byte)local_98" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)local_98" ( (type_descriptor "byte" type_identifier) ) identifier))) ;)) (labeled_statement "LAB_002c64ab:\n  local_d0 = (uint *)&local_78;" statement_identifier : (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;)) (expression_statement "local_68 = FUN_00298450();" (assignment_expression "local_68 = FUN_00298450()" identifier = (call_expression "FUN_00298450()" identifier (argument_list "()" ( )))) ;) (expression_statement "bVar49 = uVar47 == 100;" (assignment_expression "bVar49 = uVar47 == 100" identifier = (binary_expression "uVar47 == 100" identifier == number_literal)) ;) (expression_statement "puVar44 = (uint *)0x0;" (assignment_expression "puVar44 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if ((uVar36 & 0xf7) == 0x85) goto LAB_002c7a61;" if (parenthesized_expression "((uVar36 & 0xf7) == 0x85)" ( (binary_expression "(uVar36 & 0xf7) == 0x85" (parenthesized_expression "(uVar36 & 0xf7)" ( (binary_expression "uVar36 & 0xf7" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_002c7a61;" goto statement_identifier ;)) (expression_statement "local_e1 = true;" (assignment_expression "local_e1 = true" identifier = true) ;) (expression_statement "bVar48 = bVar49;" (assignment_expression "bVar48 = bVar49" identifier = identifier) ;) (labeled_statement "LAB_002c64da:\n  local_d0 = (uint *)&local_78;" statement_identifier : (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" identifier = (cast_expression "(uint *)&local_78" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_78" & identifier))) ;)) (expression_statement "puVar44 = (uint *)0x0;" (assignment_expression "puVar44 = (uint *)0x0" identifier = (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;) (goto_statement "goto LAB_002c4e43;" goto statement_identifier ;) (labeled_statement "LAB_002c7a61:\n  param_9 = local_d0;" statement_identifier : (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" identifier = identifier) ;)) (expression_statement "local_e1 = true;" (assignment_expression "local_e1 = true" identifier = true) ;) (goto_statement "goto LAB_002c4e56;" goto statement_identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (array_declarator IDENT [ LIT ])) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (expression_statement (assignment_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 (sized_type_specifier long) (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 (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT)) ))) / (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (subscript_expression IDENT [ LIT ]) >> LIT)) ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (subscript_expression IDENT [ LIT ]) >> LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))))) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) )) * LIT)) )) - (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) <= (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression LIT << (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 (subscript_expression IDENT [ LIT ]) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT != LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) )) * LIT)) )) - (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) <= (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;)) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & IDENT) )) != LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT | IDENT) )) & IDENT) )) != LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != IDENT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= IDENT) ))) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) )) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != IDENT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= IDENT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) == (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (do_statement do (compound_statement { (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) == (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) != (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) )) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_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) ))))) ))) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (char_literal ' escape_sequence ')) , (binary_expression (subscript_expression IDENT [ LIT ]) == LIT)) ))) )) (goto_statement goto statement_identifier ;))) (labeled_statement statement_identifier : (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & 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 = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }) while (parenthesized_expression ( BOOL )) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (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 (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;)) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) >> LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT || IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT || IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT )))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ (binary_expression IDENT - LIT) ])))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence '))) ;) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;)) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) 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 IDENT == LIT)) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (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 = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) + LIT) + (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) ))))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;)) })) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) >> LIT) & LIT) ^ LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression LIT < (binary_expression IDENT - LIT)) )) && (parenthesized_expression ( (binary_expression LIT < (binary_expression IDENT - LIT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression LIT < (binary_expression IDENT - LIT)) && (parenthesized_expression ( (binary_expression LIT < (binary_expression IDENT - LIT)) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (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 (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) != LIT) ))) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) )))))) ;) })) })))) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) == LIT) )) && (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) )) * LIT)) )) - (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) * LIT)) )))) & (binary_expression LIT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) )) != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT) ))) + LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;)) })) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) || IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) & LIT) )) == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) , (binary_expression IDENT != (char_literal ' escape_sequence '))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) + (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) >> LIT) & LIT) )) == LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (goto_statement goto statement_identifier ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") )))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }))) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT ^ LIT) )) & IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) ^ LIT) )) & (binary_expression IDENT == LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) | IDENT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) && (binary_expression IDENT != LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT == LIT) || (binary_expression IDENT == LIT))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression IDENT - LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( IDENT ))) (argument_list ( (binary_expression (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * IDENT) << LIT) | (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * IDENT) >> LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) << LIT) | (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) >> LIT))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT << LIT) | (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;)) }))) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT ^ LIT) )) & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) ^ LIT) )) & (binary_expression IDENT == LIT))) , (binary_expression IDENT == LIT)) ))) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (binary_expression IDENT == LIT) || (binary_expression IDENT == LIT))) , (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT - LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * IDENT) << LIT) | (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * IDENT) >> LIT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) << LIT) | (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) >> LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression LIT >> (parenthesized_expression ( (binary_expression IDENT & LIT) ))) & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))) | (binary_expression IDENT & LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) << LIT) ))))) ;)) (goto_statement goto statement_identifier ;) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (binary_expression IDENT == LIT) || (binary_expression IDENT == LIT))) , (binary_expression (binary_expression IDENT != LIT) && (binary_expression IDENT != LIT))) ))) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression LIT << (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT - LIT) ))) & LIT) ))) & LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) )))) & LIT) )) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) )))) & LIT) )) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) )))) & LIT) )) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) })))) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression LIT >> (parenthesized_expression ( (binary_expression IDENT & LIT) ))) & LIT) )) != LIT) ))) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT != LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT && IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) = IDENT) ;) (switch_statement switch (parenthesized_expression ( IDENT )) (compound_statement { (case_statement default : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * IDENT) << LIT) | (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * IDENT) >> LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier short)) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) })) })) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) || (unary_expression ! IDENT)) )) & IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == BOOL) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == BOOL) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) + LIT)) ;) })) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT & LIT) ))) == (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT * LIT) & LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT | (binary_expression (binary_expression IDENT << LIT) & LIT)) )) << LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;)) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT + LIT) & IDENT) | IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) + LIT)) ;) })) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (unary_expression ! IDENT) )) && (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) || (unary_expression ! IDENT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) , (binary_expression (binary_expression IDENT == (char_literal ' escape_sequence ')) && (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> IDENT) )) >> LIT) != (binary_expression (binary_expression IDENT + LIT) >> (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) & LIT) )))) )))) )) ))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT >> IDENT) ^ IDENT) )) & LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT - LIT) < LIT)) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT - LIT) < LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT == LIT) || (binary_expression IDENT == LIT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (unary_expression ! IDENT) )) && (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) || (unary_expression ! IDENT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT & LIT) | (binary_expression IDENT << LIT))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) || (unary_expression ! IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = IDENT) ;) }))) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != BOOL) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT - LIT)) , (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT * LIT) & LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) }))) })) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (call_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( IDENT ))) (argument_list ( (binary_expression IDENT >> LIT) ))) | (binary_expression (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) & LIT) )) >> LIT)) | (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) & LIT)) | (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) & LIT))) ;) })) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) })) (goto_statement goto statement_identifier ;)) })) })) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (switch_statement switch (parenthesized_expression ( IDENT )) (compound_statement { (case_statement default : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") )))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT ))) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;)) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) << LIT) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < (binary_expression IDENT + LIT)) )))) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , IDENT , IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = IDENT) ;) }))) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) >> LIT)) , (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )))) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) != LIT) ))) )) ))) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & 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) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;))) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) || (unary_expression ! IDENT)) )) & IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT) != (pointer_expression & IDENT)) )) (compound_statement { (do_statement do (compound_statement { (if_statement if (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 (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_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 = (subscript_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 (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;)) }))) }) while (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT) != (pointer_expression & IDENT)) )) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT) != (pointer_expression & IDENT)) )) (compound_statement { (do_statement do (compound_statement { (if_statement if (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 (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_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 = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , (binary_expression IDENT & LIT) , IDENT , IDENT , IDENT , IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;)) }))) }) while (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT) != (pointer_expression & IDENT)) )) ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) != LIT) ))) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) )))))) ;) })) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (parenthesized_expression ( (binary_expression IDENT & LIT) )))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) != LIT) ))) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) )))))) ;) })) }))) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + LIT)) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) != LIT) ))) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) )))))) ;) })) }))) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + LIT)) ;) }))))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }))) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT ^ IDENT) )) & LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT ^ IDENT) )) << LIT)) )) ^ IDENT)) ;) (break_statement break ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) != LIT) ))) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) )))))) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT ^ IDENT) )) & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT ^ IDENT) )) & LIT)) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ IDENT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression IDENT + LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT - IDENT) >> LIT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression IDENT << LIT)) )) ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + LIT)) )))) ;) })) (break_statement break ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) )) ^ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression IDENT << LIT)) )) ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < (binary_expression IDENT + LIT)) )))) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (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 (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) != LIT) ))) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) )))))) ;) })) })))) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) )) - IDENT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , IDENT , IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) })) (goto_statement goto statement_identifier ;) })) (break_statement break ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT , LIT , (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression IDENT << LIT)) )) ^ IDENT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (binary_expression IDENT + LIT) & LIT) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) & LIT) )))) ;) })) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression IDENT << LIT)) )) ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < (binary_expression IDENT + LIT)) )))) ;) }))) (break_statement break ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT , LIT , (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + LIT) >> LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression IDENT << LIT)) )) ^ IDENT)) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = IDENT) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , IDENT , IDENT , IDENT , LIT , IDENT , (binary_expression IDENT & LIT) , IDENT )))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })))) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) != LIT) )) (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) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (subscript_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) [ LIT ]) + (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (subscript_expression IDENT [ LIT ]) + (pointer_expression * IDENT))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (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) ))))) )) + IDENT) + LIT) )) * LIT) ))) >> LIT) )))) )))) = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (break_statement break ;) })) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) }))) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) }))) }))) (break_statement break ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT , LIT , (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) )) ^ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression IDENT << LIT)) )) ^ IDENT)) ;) (goto_statement goto statement_identifier ;) }))) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;))) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) - IDENT)) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (binary_expression (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (break_statement break ;)) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != BOOL) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT - LIT)) , (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) >> LIT) )))) ;) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) || (unary_expression ! IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = LIT) ;) (break_statement break ;)) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) ))))) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + LIT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) - LIT) >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) })) })) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (break_statement break ;)) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) || (unary_expression ! IDENT)) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT , LIT , (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (goto_statement goto statement_identifier ;) })))) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (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 = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) ))))) )) (argument_list ( IDENT , IDENT , LIT , (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) )) ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression IDENT << LIT)) )) ^ IDENT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = IDENT) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < (binary_expression IDENT + LIT)) )))) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = IDENT) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }))) (break_statement break ;)) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (break_statement break ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;)) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT && IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression IDENT ^ (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT ^ IDENT) )) & LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT ^ IDENT) )) << LIT)) )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) })))) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT - IDENT) >> LIT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression IDENT ^ (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + LIT)) )))) ;) })) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT - IDENT) >> LIT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression IDENT ^ (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + LIT)) )))) ;) })) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (parenthesized_expression ( (binary_expression IDENT & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression IDENT ^ (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < (binary_expression IDENT + LIT)) )))) ;) })) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) || (unary_expression ! IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression IDENT ^ (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT << LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + LIT) >> LIT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression IDENT << LIT)) )) ^ IDENT)) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })))) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != BOOL) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT - LIT)) , (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT) != (pointer_expression & IDENT))) ))) )) (compound_statement { (do_statement do (compound_statement { (if_statement if (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_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 = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (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 = (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , (subscript_expression IDENT [ LIT ]) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression LIT - IDENT) )) + IDENT) ))) >> LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT && IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression IDENT << LIT)) )) ^ IDENT)) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) }))) }) while (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT) != (pointer_expression & IDENT)) )) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT ^ IDENT) )) & LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT ^ IDENT) )) << LIT)) )) ^ IDENT)) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT - IDENT) >> LIT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) ^ (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT ^ IDENT) )) & LIT) )) << LIT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + LIT)) )))) ;) }))) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT - IDENT) >> LIT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression IDENT ^ (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression IDENT << LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + LIT)) )))) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != BOOL) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT - IDENT) >> LIT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression IDENT ^ (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression IDENT << LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression LIT < (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + LIT)) )))) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) || (unary_expression ! IDENT)) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;)) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT)) == IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT << LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT | IDENT) | IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression LIT >> (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))) & LIT) )) == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT & LIT) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT)) | (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT | IDENT) )) >> LIT) | (binary_expression (binary_expression IDENT >> LIT) & LIT))) ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) || (binary_expression IDENT == LIT)) )) || (binary_expression IDENT == LIT)) )) || (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) & LIT) | (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT) )))) | (binary_expression IDENT & LIT))) ;) })))) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) << LIT) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT))) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) = (binary_expression (binary_expression IDENT << LIT) | (binary_expression IDENT >> LIT))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < LIT) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression LIT >> (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))) & LIT) )) != LIT) ))) )) && (parenthesized_expression ( (binary_expression LIT < (binary_expression IDENT - LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) )))) ;) (goto_statement goto statement_identifier ;) })))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT ^ LIT)) ;) }) (else_clause else (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) )))) != LIT)) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) & LIT) )) != LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) & LIT) )) != LIT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence string_content escape_sequence ") )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == IDENT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence string_content escape_sequence string_content ") )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == IDENT) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT ))) ;) })))) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))) ;)) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = BOOL) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) != LIT) ))) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) + LIT) + (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) ))))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (unary_expression ! IDENT))) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & IDENT) )))) ;) (goto_statement goto statement_identifier ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , LIT , IDENT , IDENT , IDENT )))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;)) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }))) (goto_statement goto statement_identifier ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , LIT , IDENT )))) ;) (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = BOOL) ;) (goto_statement goto statement_identifier ;) })))
(function_definition "undefined8\nFUN_002c4b00(ulong *param_1,long param_2,int param_3,long param_4,undefined8 param_5,long param_6,\n            uint *param_7,undefined8 *param_8,uint *param_9,ulong *param_10,uint param_11)\n\n{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  long *plVar3;\n  int *piVar4;\n  ulong uVar5;\n  uint *puVar6;\n  uint uVar7;\n  undefined1 *puVar8;\n  long *plVar9;\n  bool bVar10;\n  byte bVar11;\n  char cVar12;\n  char cVar13;\n  char cVar14;\n  ushort uVar15;\n  uint uVar16;\n  uint uVar17;\n  undefined4 uVar18;\n  uint uVar19;\n  int iVar20;\n  undefined8 uVar21;\n  undefined8 uVar22;\n  ulong uVar23;\n  long lVar24;\n  ulong uVar25;\n  long *plVar26;\n  long *plVar27;\n  long *plVar28;\n  ushort uVar29;\n  long lVar30;\n  int extraout_EDX;\n  uint uVar31;\n  uint uVar32;\n  long *plVar33;\n  ulong uVar34;\n  uint uVar35;\n  uint uVar36;\n  ulong *puVar37;\n  int iVar38;\n  byte *pbVar39;\n  undefined8 *puVar40;\n  byte *pbVar41;\n  char *pcVar42;\n  undefined8 uVar43;\n  uint *puVar44;\n  uint uVar45;\n  ulong uVar46;\n  uint uVar47;\n  bool bVar48;\n  bool bVar49;\n  bool bVar50;\n  bool bVar51;\n  byte bVar52;\n  uint local_130;\n  sbyte local_118;\n  undefined8 *local_108;\n  uint local_f4;\n  byte local_ec;\n  uint local_e8;\n  byte local_e3;\n  byte local_e2;\n  bool local_e1;\n  uint *local_d0;\n  uint local_c8;\n  uint local_c4;\n  uint local_c0;\n  uint local_b0;\n  undefined8 *local_98;\n  uint local_84;\n  uint auStack_80 [2];\n  undefined8 local_78;\n  undefined4 local_70;\n  uint local_68;\n  undefined1 *local_58 [2];\n  undefined1 auStack_48 [24];\n  \n  bVar52 = 0;\n  uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14);\n  uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24);\n  uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18);\n  uVar17 = *param_7;\n  uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar17 = param_7[1];\n  uVar47 = uVar17 >> 0x18;\n  uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar34 = (ulong)uVar36;\n  uVar7 = uVar36 >> 8;\n  if (param_3 == 4) {\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }\n  else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }\n  local_70 = 0x80000000;\n  local_68 = 0;\n  plVar3 = *(long **)(param_2 + 0x10);\n  local_78 = 0xffffffff00000000;\n  if (param_8 == (undefined8 *)0x0) {\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    \n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    \n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    \n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }\n  else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    \n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  if (*(int *)((long)param_8 + 0x4c) == -1) {\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c5256:\n  local_d0 = (uint *)&local_78;\n  uVar36 = (uint)uVar34;\n  if (((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')) {\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }\n  goto LAB_002c52f0;\nLAB_002c82c4:\n  FUN_00293370();\nLAB_002c82c9:\n  uVar36 = (uint)uVar34;\n  if ((char)puVar44 == '\0') {\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }\n  else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar17;\n  bVar49 = (bool)((byte)local_98 & bVar48);\n  goto joined_r0x002c52d3;\nswitchD_002c4f87_caseD_9:\n  bVar48 = false;\nswitchD_002c5379_caseD_9:\n  if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }\n  if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8333;\n  puVar40 = param_8;\n  local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n  local_98._0_1_ = (byte)puVar40;\n  lVar30 = *(long *)(param_4 + 0x20);\n  if (lVar30 != 0) goto LAB_002c6206;\n  FUN_00290a70();\nLAB_002c6490:\n  uVar17 = (uint)(byte)local_98;\nLAB_002c64ab:\n  local_d0 = (uint *)&local_78;\n  local_68 = FUN_00298450();\n  bVar49 = uVar47 == 100;\n  puVar44 = (uint *)0x0;\n  if ((uVar36 & 0xf7) == 0x85) goto LAB_002c7a61;\n  local_e1 = true;\n  bVar48 = bVar49;\nLAB_002c64da:\n  local_d0 = (uint *)&local_78;\n  puVar44 = (uint *)0x0;\n  param_9 = local_d0;\n  goto LAB_002c4e43;\nLAB_002c7a61:\n  param_9 = local_d0;\n  local_e1 = true;\n  goto LAB_002c4e56;\n}" (type_identifier "undefined8") (function_declarator "FUN_002c4b00(ulong *param_1,long param_2,int param_3,long param_4,undefined8 param_5,long param_6,\n            uint *param_7,undefined8 *param_8,uint *param_9,ulong *param_10,uint param_11)" (identifier "FUN_002c4b00") (parameter_list "(ulong *param_1,long param_2,int param_3,long param_4,undefined8 param_5,long param_6,\n            uint *param_7,undefined8 *param_8,uint *param_9,ulong *param_10,uint param_11)" (( "(") (parameter_declaration "ulong *param_1" (type_identifier "ulong") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "long param_2" (sized_type_specifier "long" (long "long")) (identifier "param_2")) (, ",") (parameter_declaration "int param_3" (primitive_type "int") (identifier "param_3")) (, ",") (parameter_declaration "long param_4" (sized_type_specifier "long" (long "long")) (identifier "param_4")) (, ",") (parameter_declaration "undefined8 param_5" (type_identifier "undefined8") (identifier "param_5")) (, ",") (parameter_declaration "long param_6" (sized_type_specifier "long" (long "long")) (identifier "param_6")) (, ",") (parameter_declaration "uint *param_7" (type_identifier "uint") (pointer_declarator "*param_7" (* "*") (identifier "param_7"))) (, ",") (parameter_declaration "undefined8 *param_8" (type_identifier "undefined8") (pointer_declarator "*param_8" (* "*") (identifier "param_8"))) (, ",") (parameter_declaration "uint *param_9" (type_identifier "uint") (pointer_declarator "*param_9" (* "*") (identifier "param_9"))) (, ",") (parameter_declaration "ulong *param_10" (type_identifier "ulong") (pointer_declarator "*param_10" (* "*") (identifier "param_10"))) (, ",") (parameter_declaration "uint param_11" (type_identifier "uint") (identifier "param_11")) () ")"))) (compound_statement "{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  long *plVar3;\n  int *piVar4;\n  ulong uVar5;\n  uint *puVar6;\n  uint uVar7;\n  undefined1 *puVar8;\n  long *plVar9;\n  bool bVar10;\n  byte bVar11;\n  char cVar12;\n  char cVar13;\n  char cVar14;\n  ushort uVar15;\n  uint uVar16;\n  uint uVar17;\n  undefined4 uVar18;\n  uint uVar19;\n  int iVar20;\n  undefined8 uVar21;\n  undefined8 uVar22;\n  ulong uVar23;\n  long lVar24;\n  ulong uVar25;\n  long *plVar26;\n  long *plVar27;\n  long *plVar28;\n  ushort uVar29;\n  long lVar30;\n  int extraout_EDX;\n  uint uVar31;\n  uint uVar32;\n  long *plVar33;\n  ulong uVar34;\n  uint uVar35;\n  uint uVar36;\n  ulong *puVar37;\n  int iVar38;\n  byte *pbVar39;\n  undefined8 *puVar40;\n  byte *pbVar41;\n  char *pcVar42;\n  undefined8 uVar43;\n  uint *puVar44;\n  uint uVar45;\n  ulong uVar46;\n  uint uVar47;\n  bool bVar48;\n  bool bVar49;\n  bool bVar50;\n  bool bVar51;\n  byte bVar52;\n  uint local_130;\n  sbyte local_118;\n  undefined8 *local_108;\n  uint local_f4;\n  byte local_ec;\n  uint local_e8;\n  byte local_e3;\n  byte local_e2;\n  bool local_e1;\n  uint *local_d0;\n  uint local_c8;\n  uint local_c4;\n  uint local_c0;\n  uint local_b0;\n  undefined8 *local_98;\n  uint local_84;\n  uint auStack_80 [2];\n  undefined8 local_78;\n  undefined4 local_70;\n  uint local_68;\n  undefined1 *local_58 [2];\n  undefined1 auStack_48 [24];\n  \n  bVar52 = 0;\n  uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14);\n  uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24);\n  uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18);\n  uVar17 = *param_7;\n  uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar17 = param_7[1];\n  uVar47 = uVar17 >> 0x18;\n  uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n  uVar34 = (ulong)uVar36;\n  uVar7 = uVar36 >> 8;\n  if (param_3 == 4) {\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }\n  else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }\n  local_70 = 0x80000000;\n  local_68 = 0;\n  plVar3 = *(long **)(param_2 + 0x10);\n  local_78 = 0xffffffff00000000;\n  if (param_8 == (undefined8 *)0x0) {\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    \n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    \n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    \n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }\n  else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    \n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }\n  if (*(int *)((long)param_8 + 0x4c) == -1) {\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }\nLAB_002c5256:\n  local_d0 = (uint *)&local_78;\n  uVar36 = (uint)uVar34;\n  if (((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')) {\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }\n  goto LAB_002c52f0;\nLAB_002c82c4:\n  FUN_00293370();\nLAB_002c82c9:\n  uVar36 = (uint)uVar34;\n  if ((char)puVar44 == '\0') {\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }\n  else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }\n  }\nLAB_002c4e20:\n  local_98._0_1_ = (byte)uVar17;\n  bVar49 = (bool)((byte)local_98 & bVar48);\n  goto joined_r0x002c52d3;\nswitchD_002c4f87_caseD_9:\n  bVar48 = false;\nswitchD_002c5379_caseD_9:\n  if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }\n  if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8333;\n  puVar40 = param_8;\n  local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n  local_98._0_1_ = (byte)puVar40;\n  lVar30 = *(long *)(param_4 + 0x20);\n  if (lVar30 != 0) goto LAB_002c6206;\n  FUN_00290a70();\nLAB_002c6490:\n  uVar17 = (uint)(byte)local_98;\nLAB_002c64ab:\n  local_d0 = (uint *)&local_78;\n  local_68 = FUN_00298450();\n  bVar49 = uVar47 == 100;\n  puVar44 = (uint *)0x0;\n  if ((uVar36 & 0xf7) == 0x85) goto LAB_002c7a61;\n  local_e1 = true;\n  bVar48 = bVar49;\nLAB_002c64da:\n  local_d0 = (uint *)&local_78;\n  puVar44 = (uint *)0x0;\n  param_9 = local_d0;\n  goto LAB_002c4e43;\nLAB_002c7a61:\n  param_9 = local_d0;\n  local_e1 = true;\n  goto LAB_002c4e56;\n}" ({ "{") (declaration "undefined4 uVar1;" (type_identifier "undefined4") (identifier "uVar1") (; ";")) (declaration "undefined4 uVar2;" (type_identifier "undefined4") (identifier "uVar2") (; ";")) (declaration "long *plVar3;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar3" (* "*") (identifier "plVar3")) (; ";")) (declaration "int *piVar4;" (primitive_type "int") (pointer_declarator "*piVar4" (* "*") (identifier "piVar4")) (; ";")) (declaration "ulong uVar5;" (type_identifier "ulong") (identifier "uVar5") (; ";")) (declaration "uint *puVar6;" (type_identifier "uint") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "uint uVar7;" (type_identifier "uint") (identifier "uVar7") (; ";")) (declaration "undefined1 *puVar8;" (type_identifier "undefined1") (pointer_declarator "*puVar8" (* "*") (identifier "puVar8")) (; ";")) (declaration "long *plVar9;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar9" (* "*") (identifier "plVar9")) (; ";")) (declaration "bool bVar10;" (primitive_type "bool") (identifier "bVar10") (; ";")) (declaration "byte bVar11;" (type_identifier "byte") (identifier "bVar11") (; ";")) (declaration "char cVar12;" (primitive_type "char") (identifier "cVar12") (; ";")) (declaration "char cVar13;" (primitive_type "char") (identifier "cVar13") (; ";")) (declaration "char cVar14;" (primitive_type "char") (identifier "cVar14") (; ";")) (declaration "ushort uVar15;" (type_identifier "ushort") (identifier "uVar15") (; ";")) (declaration "uint uVar16;" (type_identifier "uint") (identifier "uVar16") (; ";")) (declaration "uint uVar17;" (type_identifier "uint") (identifier "uVar17") (; ";")) (declaration "undefined4 uVar18;" (type_identifier "undefined4") (identifier "uVar18") (; ";")) (declaration "uint uVar19;" (type_identifier "uint") (identifier "uVar19") (; ";")) (declaration "int iVar20;" (primitive_type "int") (identifier "iVar20") (; ";")) (declaration "undefined8 uVar21;" (type_identifier "undefined8") (identifier "uVar21") (; ";")) (declaration "undefined8 uVar22;" (type_identifier "undefined8") (identifier "uVar22") (; ";")) (declaration "ulong uVar23;" (type_identifier "ulong") (identifier "uVar23") (; ";")) (declaration "long lVar24;" (sized_type_specifier "long" (long "long")) (identifier "lVar24") (; ";")) (declaration "ulong uVar25;" (type_identifier "ulong") (identifier "uVar25") (; ";")) (declaration "long *plVar26;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar26" (* "*") (identifier "plVar26")) (; ";")) (declaration "long *plVar27;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar27" (* "*") (identifier "plVar27")) (; ";")) (declaration "long *plVar28;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar28" (* "*") (identifier "plVar28")) (; ";")) (declaration "ushort uVar29;" (type_identifier "ushort") (identifier "uVar29") (; ";")) (declaration "long lVar30;" (sized_type_specifier "long" (long "long")) (identifier "lVar30") (; ";")) (declaration "int extraout_EDX;" (primitive_type "int") (identifier "extraout_EDX") (; ";")) (declaration "uint uVar31;" (type_identifier "uint") (identifier "uVar31") (; ";")) (declaration "uint uVar32;" (type_identifier "uint") (identifier "uVar32") (; ";")) (declaration "long *plVar33;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar33" (* "*") (identifier "plVar33")) (; ";")) (declaration "ulong uVar34;" (type_identifier "ulong") (identifier "uVar34") (; ";")) (declaration "uint uVar35;" (type_identifier "uint") (identifier "uVar35") (; ";")) (declaration "uint uVar36;" (type_identifier "uint") (identifier "uVar36") (; ";")) (declaration "ulong *puVar37;" (type_identifier "ulong") (pointer_declarator "*puVar37" (* "*") (identifier "puVar37")) (; ";")) (declaration "int iVar38;" (primitive_type "int") (identifier "iVar38") (; ";")) (declaration "byte *pbVar39;" (type_identifier "byte") (pointer_declarator "*pbVar39" (* "*") (identifier "pbVar39")) (; ";")) (declaration "undefined8 *puVar40;" (type_identifier "undefined8") (pointer_declarator "*puVar40" (* "*") (identifier "puVar40")) (; ";")) (declaration "byte *pbVar41;" (type_identifier "byte") (pointer_declarator "*pbVar41" (* "*") (identifier "pbVar41")) (; ";")) (declaration "char *pcVar42;" (primitive_type "char") (pointer_declarator "*pcVar42" (* "*") (identifier "pcVar42")) (; ";")) (declaration "undefined8 uVar43;" (type_identifier "undefined8") (identifier "uVar43") (; ";")) (declaration "uint *puVar44;" (type_identifier "uint") (pointer_declarator "*puVar44" (* "*") (identifier "puVar44")) (; ";")) (declaration "uint uVar45;" (type_identifier "uint") (identifier "uVar45") (; ";")) (declaration "ulong uVar46;" (type_identifier "ulong") (identifier "uVar46") (; ";")) (declaration "uint uVar47;" (type_identifier "uint") (identifier "uVar47") (; ";")) (declaration "bool bVar48;" (primitive_type "bool") (identifier "bVar48") (; ";")) (declaration "bool bVar49;" (primitive_type "bool") (identifier "bVar49") (; ";")) (declaration "bool bVar50;" (primitive_type "bool") (identifier "bVar50") (; ";")) (declaration "bool bVar51;" (primitive_type "bool") (identifier "bVar51") (; ";")) (declaration "byte bVar52;" (type_identifier "byte") (identifier "bVar52") (; ";")) (declaration "uint local_130;" (type_identifier "uint") (identifier "local_130") (; ";")) (declaration "sbyte local_118;" (type_identifier "sbyte") (identifier "local_118") (; ";")) (declaration "undefined8 *local_108;" (type_identifier "undefined8") (pointer_declarator "*local_108" (* "*") (identifier "local_108")) (; ";")) (declaration "uint local_f4;" (type_identifier "uint") (identifier "local_f4") (; ";")) (declaration "byte local_ec;" (type_identifier "byte") (identifier "local_ec") (; ";")) (declaration "uint local_e8;" (type_identifier "uint") (identifier "local_e8") (; ";")) (declaration "byte local_e3;" (type_identifier "byte") (identifier "local_e3") (; ";")) (declaration "byte local_e2;" (type_identifier "byte") (identifier "local_e2") (; ";")) (declaration "bool local_e1;" (primitive_type "bool") (identifier "local_e1") (; ";")) (declaration "uint *local_d0;" (type_identifier "uint") (pointer_declarator "*local_d0" (* "*") (identifier "local_d0")) (; ";")) (declaration "uint local_c8;" (type_identifier "uint") (identifier "local_c8") (; ";")) (declaration "uint local_c4;" (type_identifier "uint") (identifier "local_c4") (; ";")) (declaration "uint local_c0;" (type_identifier "uint") (identifier "local_c0") (; ";")) (declaration "uint local_b0;" (type_identifier "uint") (identifier "local_b0") (; ";")) (declaration "undefined8 *local_98;" (type_identifier "undefined8") (pointer_declarator "*local_98" (* "*") (identifier "local_98")) (; ";")) (declaration "uint local_84;" (type_identifier "uint") (identifier "local_84") (; ";")) (declaration "uint auStack_80 [2];" (type_identifier "uint") (array_declarator "auStack_80 [2]" (identifier "auStack_80") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined8 local_78;" (type_identifier "undefined8") (identifier "local_78") (; ";")) (declaration "undefined4 local_70;" (type_identifier "undefined4") (identifier "local_70") (; ";")) (declaration "uint local_68;" (type_identifier "uint") (identifier "local_68") (; ";")) (declaration "undefined1 *local_58 [2];" (type_identifier "undefined1") (pointer_declarator "*local_58 [2]" (* "*") (array_declarator "local_58 [2]" (identifier "local_58") ([ "[") (number_literal "2") (] "]"))) (; ";")) (declaration "undefined1 auStack_48 [24];" (type_identifier "undefined1") (array_declarator "auStack_48 [24]" (identifier "auStack_48") ([ "[") (number_literal "24") (] "]")) (; ";")) (expression_statement "bVar52 = 0;" (assignment_expression "bVar52 = 0" (identifier "bVar52") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14);" (assignment_expression "uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14)" (identifier "uVar17") (= "=") (pointer_expression "*(uint *)(*(long *)(param_2 + 0x20) + 0x14)" (* "*") (cast_expression "(uint *)(*(long *)(param_2 + 0x20) + 0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x14)" (( "(") (binary_expression "*(long *)(param_2 + 0x20) + 0x14" (pointer_expression "*(long *)(param_2 + 0x20)" (* "*") (cast_expression "(long *)(param_2 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x20)" (( "(") (binary_expression "param_2 + 0x20" (identifier "param_2") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (expression_statement "uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24);" (assignment_expression "uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24)" (identifier "uVar47") (= "=") (pointer_expression "*(uint *)(*(long *)(param_2 + 0x20) + 0x24)" (* "*") (cast_expression "(uint *)(*(long *)(param_2 + 0x20) + 0x24)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x24)" (( "(") (binary_expression "*(long *)(param_2 + 0x20) + 0x24" (pointer_expression "*(long *)(param_2 + 0x20)" (* "*") (cast_expression "(long *)(param_2 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x20)" (( "(") (binary_expression "param_2 + 0x20" (identifier "param_2") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0x24")) () ")"))))) (; ";")) (expression_statement "uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18);" (assignment_expression "uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18)" (identifier "uVar23") (= "=") (binary_expression "(ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18) /\n           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18)" (call_expression "(ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18)" (( "(") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                  uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar17 << 0x18" (identifier "uVar17") (<< "<<") (number_literal "0x18"))) () ")"))) (/ "/") (call_expression "(ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18)" (( "(") (binary_expression "uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |\n                  uVar47 << 0x18" (binary_expression "uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8" (binary_expression "uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8" (binary_expression "uVar47 >> 0x18" (identifier "uVar47") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar47 & 0xff0000) >> 8" (parenthesized_expression "(uVar47 & 0xff0000)" (( "(") (binary_expression "uVar47 & 0xff0000" (identifier "uVar47") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar47 & 0xff00) << 8" (parenthesized_expression "(uVar47 & 0xff00)" (( "(") (binary_expression "uVar47 & 0xff00" (identifier "uVar47") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar47 << 0x18" (identifier "uVar47") (<< "<<") (number_literal "0x18"))) () ")"))))) (; ";")) (expression_statement "uVar17 = *param_7;" (assignment_expression "uVar17 = *param_7" (identifier "uVar17") (= "=") (pointer_expression "*param_7" (* "*") (identifier "param_7"))) (; ";")) (expression_statement "uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;" (assignment_expression "uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (identifier "uVar35") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar17 << 0x18" (identifier "uVar17") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "uVar17 = param_7[1];" (assignment_expression "uVar17 = param_7[1]" (identifier "uVar17") (= "=") (subscript_expression "param_7[1]" (identifier "param_7") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "uVar47 = uVar17 >> 0x18;" (assignment_expression "uVar47 = uVar17 >> 0x18" (identifier "uVar47") (= "=") (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18"))) (; ";")) (expression_statement "uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;" (assignment_expression "uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (identifier "uVar36") (= "=") (binary_expression "uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar47 | (uVar17 & 0xff0000) >> 8" (identifier "uVar47") (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar17 << 0x18" (identifier "uVar17") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "uVar34 = (ulong)uVar36;" (assignment_expression "uVar34 = (ulong)uVar36" (identifier "uVar34") (= "=") (cast_expression "(ulong)uVar36" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar36"))) (; ";")) (expression_statement "uVar7 = uVar36 >> 8;" (assignment_expression "uVar7 = uVar36 >> 8" (identifier "uVar7") (= "=") (binary_expression "uVar36 >> 8" (identifier "uVar36") (>> ">>") (number_literal "8"))) (; ";")) (if_statement "if (param_3 == 4) {\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }\n  else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" (if "if") (parenthesized_expression "(param_3 == 4)" (( "(") (binary_expression "param_3 == 4" (identifier "param_3") (== "==") (number_literal "4")) () ")")) (compound_statement "{\n    local_c4 = 0;\n    uVar16 = param_7[2];\n    local_b0 = 0xffffffff;\n    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }\n  }" ({ "{") (expression_statement "local_c4 = 0;" (assignment_expression "local_c4 = 0" (identifier "local_c4") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar16 = param_7[2];" (assignment_expression "uVar16 = param_7[2]" (identifier "uVar16") (= "=") (subscript_expression "param_7[2]" (identifier "param_7") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "local_b0 = 0xffffffff;" (assignment_expression "local_b0 = 0xffffffff" (identifier "local_b0") (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;" (assignment_expression "local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" (identifier "local_c8") (= "=") (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" (identifier "uVar16") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" (( "(") (binary_expression "uVar16 & 0xff0000" (identifier "uVar16") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar16 & 0xff00) << 8" (parenthesized_expression "(uVar16 & 0xff00)" (( "(") (binary_expression "uVar16 & 0xff00" (identifier "uVar16") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar16 << 0x18" (identifier "uVar16") (<< "<<") (number_literal "0x18")))) (; ";")) (if_statement "if (param_6 + 1U < uVar23) {\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }" (if "if") (parenthesized_expression "(param_6 + 1U < uVar23)" (( "(") (binary_expression "param_6 + 1U < uVar23" (binary_expression "param_6 + 1U" (identifier "param_6") (+ "+") (number_literal "1U")) (< "<") (identifier "uVar23")) () ")")) (compound_statement "{\n      uVar16 = param_7[3];\n      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;\n      local_c4 = param_7[4] >> 0x18;\n    }" ({ "{") (expression_statement "uVar16 = param_7[3];" (assignment_expression "uVar16 = param_7[3]" (identifier "uVar16") (= "=") (subscript_expression "param_7[3]" (identifier "param_7") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18\n      ;" (assignment_expression "local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" (identifier "local_b0") (= "=") (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" (identifier "uVar16") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" (( "(") (binary_expression "uVar16 & 0xff0000" (identifier "uVar16") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar16 & 0xff00) << 8" (parenthesized_expression "(uVar16 & 0xff00)" (( "(") (binary_expression "uVar16 & 0xff00" (identifier "uVar16") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar16 << 0x18" (identifier "uVar16") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "local_c4 = param_7[4] >> 0x18;" (assignment_expression "local_c4 = param_7[4] >> 0x18" (identifier "local_c4") (= "=") (binary_expression "param_7[4] >> 0x18" (subscript_expression "param_7[4]" (identifier "param_7") ([ "[") (number_literal "4") (] "]")) (>> ">>") (number_literal "0x18"))) (; ";")) (} "}"))) (} "}")) (else_clause "else if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" (else "else") (if_statement "if (param_6 + 1U < uVar23) {\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }\n  else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" (if "if") (parenthesized_expression "(param_6 + 1U < uVar23)" (( "(") (binary_expression "param_6 + 1U < uVar23" (binary_expression "param_6 + 1U" (identifier "param_6") (+ "+") (number_literal "1U")) (< "<") (identifier "uVar23")) () ")")) (compound_statement "{\n    local_c8 = 0;\n    uVar16 = param_7[2];\n    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;\n    local_c4 = param_7[3] >> 0x18;\n  }" ({ "{") (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" (identifier "local_c8") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar16 = param_7[2];" (assignment_expression "uVar16 = param_7[2]" (identifier "uVar16") (= "=") (subscript_expression "param_7[2]" (identifier "param_7") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;" (assignment_expression "local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" (identifier "local_b0") (= "=") (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8" (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" (identifier "uVar16") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" (( "(") (binary_expression "uVar16 & 0xff0000" (identifier "uVar16") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar16 & 0xff00) << 8" (parenthesized_expression "(uVar16 & 0xff00)" (( "(") (binary_expression "uVar16 & 0xff00" (identifier "uVar16") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar16 << 0x18" (identifier "uVar16") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "local_c4 = param_7[3] >> 0x18;" (assignment_expression "local_c4 = param_7[3] >> 0x18" (identifier "local_c4") (= "=") (binary_expression "param_7[3] >> 0x18" (subscript_expression "param_7[3]" (identifier "param_7") ([ "[") (number_literal "3") (] "]")) (>> ">>") (number_literal "0x18"))) (; ";")) (} "}")) (else_clause "else {\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" (else "else") (compound_statement "{\n    local_c4 = 0;\n    local_b0 = 0xffffffff;\n    local_c8 = 0;\n  }" ({ "{") (expression_statement "local_c4 = 0;" (assignment_expression "local_c4 = 0" (identifier "local_c4") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b0 = 0xffffffff;" (assignment_expression "local_b0 = 0xffffffff" (identifier "local_b0") (= "=") (number_literal "0xffffffff")) (; ";")) (expression_statement "local_c8 = 0;" (assignment_expression "local_c8 = 0" (identifier "local_c8") (= "=") (number_literal "0")) (; ";")) (} "}")))))) (expression_statement "local_70 = 0x80000000;" (assignment_expression "local_70 = 0x80000000" (identifier "local_70") (= "=") (number_literal "0x80000000")) (; ";")) (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" (identifier "local_68") (= "=") (number_literal "0")) (; ";")) (expression_statement "plVar3 = *(long **)(param_2 + 0x10);" (assignment_expression "plVar3 = *(long **)(param_2 + 0x10)" (identifier "plVar3") (= "=") (pointer_expression "*(long **)(param_2 + 0x10)" (* "*") (cast_expression "(long **)(param_2 + 0x10)" (( "(") (type_descriptor "long **" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_2 + 0x10)" (( "(") (binary_expression "param_2 + 0x10" (identifier "param_2") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "local_78 = 0xffffffff00000000;" (assignment_expression "local_78 = 0xffffffff00000000" (identifier "local_78") (= "=") (number_literal "0xffffffff00000000")) (; ";")) (if_statement "if (param_8 == (undefined8 *)0x0) {\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    \n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    \n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    \n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }\n  else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    \n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }" (if "if") (parenthesized_expression "(param_8 == (undefined8 *)0x0)" (( "(") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    \n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }\n    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);\n    uVar25 = 1L << (local_ec & 0x3f);\n    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar46 = uVar25 & uVar23;\n    puVar44 = (uint *)(ulong)(uVar46 != 0);\n    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }\n    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);\n    uVar17 = (uint)((uVar25 & uVar5) != 0);\n    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;\n    if (local_e1) {\n                    \n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }\n    if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }\n    plVar9 = (long *)plVar3[99];\n    plVar33 = plVar3 + 0x62;\n    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;\n    do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);\nLAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;\nLAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;\n    local_d0 = (uint *)&local_78;\n    iVar38 = *(int *)(param_2 + 0x30);\n    cVar13 = FUN_00297400(plVar3,iVar38);\n    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    \n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }\n    if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }\n  }" ({ "{") (if_statement "if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {\n                    \n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }" (if "if") (parenthesized_expression "(((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7)" (( "(") (binary_expression "((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7" (binary_expression "((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x46)" (parenthesized_expression "((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8)" (( "(") (binary_expression "(ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8" (binary_expression "(ulong)*(uint *)(plVar3 + 0x48)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (cast_expression "(uint *)(plVar3 + 0x48)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3 + 0x48)" (( "(") (binary_expression "plVar3 + 0x48" (identifier "plVar3") (+ "+") (number_literal "0x48")) () ")")))) (+ "+") (binary_expression "(plVar3[0x47] - plVar3[0x45]) * 8" (parenthesized_expression "(plVar3[0x47] - plVar3[0x45])" (( "(") (binary_expression "plVar3[0x47] - plVar3[0x45]" (subscript_expression "plVar3[0x47]" (identifier "plVar3") ([ "[") (number_literal "0x47") (] "]")) (- "-") (subscript_expression "plVar3[0x45]" (identifier "plVar3") ([ "[") (number_literal "0x45") (] "]"))) () ")")) (* "*") (number_literal "8"))) () ")")) (- "-") (binary_expression "(ulong)*(uint *)(plVar3 + 0x46)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (cast_expression "(uint *)(plVar3 + 0x46)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3 + 0x46)" (( "(") (binary_expression "plVar3 + 0x46" (identifier "plVar3") (+ "+") (number_literal "0x46")) () ")"))))) (<= "<=") (cast_expression "(ulong)uVar7" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar7"))) () ")")) (compound_statement "{\n                    \n      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");\n    }" ({ "{") (expression_statement "FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x65f,"local_symbol_is_mips16")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x65f") (, ",") (string_literal ""local_symbol_is_mips16"" (" """) (string_content "local_symbol_is_mips16") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);" (assignment_expression "local_ec = (byte)((uVar17 & 0xff0000) >> 0x10)" (identifier "local_ec") (= "=") (call_expression "(byte)((uVar17 & 0xff0000) >> 0x10)" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "((uVar17 & 0xff0000) >> 0x10)" (( "(") (binary_expression "(uVar17 & 0xff0000) >> 0x10" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "0x10")) () ")")))) (; ";")) (expression_statement "uVar25 = 1L << (local_ec & 0x3f);" (assignment_expression "uVar25 = 1L << (local_ec & 0x3f)" (identifier "uVar25") (= "=") (binary_expression "1L << (local_ec & 0x3f)" (number_literal "1L") (<< "<<") (parenthesized_expression "(local_ec & 0x3f)" (( "(") (binary_expression "local_ec & 0x3f" (identifier "local_ec") (& "&") (number_literal "0x3f")) () ")")))) (; ";")) (expression_statement "uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);" (assignment_expression "uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8)" (identifier "uVar23") (= "=") (pointer_expression "*(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8)" (* "*") (cast_expression "(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8)" (( "(") (binary_expression "plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8" (subscript_expression "plVar3[0x45]" (identifier "plVar3") ([ "[") (number_literal "0x45") (] "]")) (+ "+") (binary_expression "(ulong)(uVar36 >> 0xe) * 8" (call_expression "(ulong)(uVar36 >> 0xe)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar36 >> 0xe)" (( "(") (binary_expression "uVar36 >> 0xe" (identifier "uVar36") (>> ">>") (number_literal "0xe")) () ")"))) (* "*") (number_literal "8"))) () ")"))))) (; ";")) (expression_statement "uVar46 = uVar25 & uVar23;" (assignment_expression "uVar46 = uVar25 & uVar23" (identifier "uVar46") (= "=") (binary_expression "uVar25 & uVar23" (identifier "uVar25") (& "&") (identifier "uVar23"))) (; ";")) (expression_statement "puVar44 = (uint *)(ulong)(uVar46 != 0);" (assignment_expression "puVar44 = (uint *)(ulong)(uVar46 != 0)" (identifier "puVar44") (= "=") (cast_expression "(uint *)(ulong)(uVar46 != 0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(ulong)(uVar46 != 0)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar46 != 0)" (( "(") (binary_expression "uVar46 != 0" (identifier "uVar46") (!= "!=") (number_literal "0")) () ")"))))) (; ";")) (if_statement "if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {\nLAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }" (if "if") (parenthesized_expression "(((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7)" (( "(") (binary_expression "((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7" (binary_expression "((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -\n        (ulong)*(uint *)(plVar3 + 0x4b)" (parenthesized_expression "((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8)" (( "(") (binary_expression "(ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8" (binary_expression "(ulong)*(uint *)(plVar3 + 0x4d)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (cast_expression "(uint *)(plVar3 + 0x4d)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3 + 0x4d)" (( "(") (binary_expression "plVar3 + 0x4d" (identifier "plVar3") (+ "+") (number_literal "0x4d")) () ")")))) (+ "+") (binary_expression "(plVar3[0x4c] - plVar3[0x4a]) * 8" (parenthesized_expression "(plVar3[0x4c] - plVar3[0x4a])" (( "(") (binary_expression "plVar3[0x4c] - plVar3[0x4a]" (subscript_expression "plVar3[0x4c]" (identifier "plVar3") ([ "[") (number_literal "0x4c") (] "]")) (- "-") (subscript_expression "plVar3[0x4a]" (identifier "plVar3") ([ "[") (number_literal "0x4a") (] "]"))) () ")")) (* "*") (number_literal "8"))) () ")")) (- "-") (binary_expression "(ulong)*(uint *)(plVar3 + 0x4b)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (cast_expression "(uint *)(plVar3 + 0x4b)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3 + 0x4b)" (( "(") (binary_expression "plVar3 + 0x4b" (identifier "plVar3") (+ "+") (number_literal "0x4b")) () ")"))))) (<= "<=") (cast_expression "(ulong)uVar7" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar7"))) () ")")) (compound_statement "{\nLAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");\n    }" ({ "{") (labeled_statement "LAB_002c821c:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");" (statement_identifier "LAB_002c821c") (: ":") (expression_statement "FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x668,"local_symbol_is_micromips")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x668") (, ",") (string_literal ""local_symbol_is_micromips"" (" """) (string_content "local_symbol_is_micromips") (" """)) () ")"))) (; ";"))) (} "}"))) (expression_statement "uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);" (assignment_expression "uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8)" (identifier "uVar5") (= "=") (pointer_expression "*(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8)" (* "*") (cast_expression "(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8)" (( "(") (binary_expression "plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8" (subscript_expression "plVar3[0x4a]" (identifier "plVar3") ([ "[") (number_literal "0x4a") (] "]")) (+ "+") (binary_expression "(ulong)(uVar36 >> 0xe) * 8" (call_expression "(ulong)(uVar36 >> 0xe)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar36 >> 0xe)" (( "(") (binary_expression "uVar36 >> 0xe" (identifier "uVar36") (>> ">>") (number_literal "0xe")) () ")"))) (* "*") (number_literal "8"))) () ")"))))) (; ";")) (expression_statement "uVar17 = (uint)((uVar25 & uVar5) != 0);" (assignment_expression "uVar17 = (uint)((uVar25 & uVar5) != 0)" (identifier "uVar17") (= "=") (call_expression "(uint)((uVar25 & uVar5) != 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((uVar25 & uVar5) != 0)" (( "(") (binary_expression "(uVar25 & uVar5) != 0" (parenthesized_expression "(uVar25 & uVar5)" (( "(") (binary_expression "uVar25 & uVar5" (identifier "uVar25") (& "&") (identifier "uVar5")) () ")")) (!= "!=") (number_literal "0")) () ")")))) (; ";")) (expression_statement "local_e1 = ((uVar23 | uVar5) & uVar25) != 0;" (assignment_expression "local_e1 = ((uVar23 | uVar5) & uVar25) != 0" (identifier "local_e1") (= "=") (binary_expression "((uVar23 | uVar5) & uVar25) != 0" (parenthesized_expression "((uVar23 | uVar5) & uVar25)" (( "(") (binary_expression "(uVar23 | uVar5) & uVar25" (parenthesized_expression "(uVar23 | uVar5)" (( "(") (binary_expression "uVar23 | uVar5" (identifier "uVar23") (| "|") (identifier "uVar5")) () ")")) (& "&") (identifier "uVar25")) () ")")) (!= "!=") (number_literal "0"))) (; ";")) (if_statement "if (local_e1) {\n                    \n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }" (if "if") (parenthesized_expression "(local_e1)" (( "(") (identifier "local_e1") () ")")) (compound_statement "{\n                    \n      local_68 = FUN_001d7270(param_9,plVar3,1);\n      param_9 = (uint *)&local_78;\n    }" ({ "{") (expression_statement "local_68 = FUN_001d7270(param_9,plVar3,1);" (assignment_expression "local_68 = FUN_001d7270(param_9,plVar3,1)" (identifier "local_68") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,1)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,1)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "param_9 = (uint *)&local_78;" (assignment_expression "param_9 = (uint *)&local_78" (identifier "param_9") (= "=") (cast_expression "(uint *)&local_78" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_78" (& "&") (identifier "local_78")))) (; ";")) (} "}"))) (if_statement "if (uVar47 == 100) {\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }" (if "if") (parenthesized_expression "(uVar47 == 100)" (( "(") (binary_expression "uVar47 == 100" (identifier "uVar47") (== "==") (number_literal "100")) () ")")) (compound_statement "{\n      plVar33 = (long *)plVar3[0x69];\n      plVar9 = plVar3 + 0x68;\n      plVar28 = plVar33;\n      plVar27 = plVar9;\n      if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }\nLAB_002c56d8:\n      cVar12 = '\0';\n      goto LAB_002c56df;\n    }" ({ "{") (expression_statement "plVar33 = (long *)plVar3[0x69];" (assignment_expression "plVar33 = (long *)plVar3[0x69]" (identifier "plVar33") (= "=") (cast_expression "(long *)plVar3[0x69]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "plVar3[0x69]" (identifier "plVar3") ([ "[") (number_literal "0x69") (] "]")))) (; ";")) (expression_statement "plVar9 = plVar3 + 0x68;" (assignment_expression "plVar9 = plVar3 + 0x68" (identifier "plVar9") (= "=") (binary_expression "plVar3 + 0x68" (identifier "plVar3") (+ "+") (number_literal "0x68"))) (; ";")) (expression_statement "plVar28 = plVar33;" (assignment_expression "plVar28 = plVar33" (identifier "plVar28") (= "=") (identifier "plVar33")) (; ";")) (expression_statement "plVar27 = plVar9;" (assignment_expression "plVar27 = plVar9" (identifier "plVar27") (= "=") (identifier "plVar9")) (; ";")) (if_statement "if (plVar33 != (long *)0x0) {\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }" (if "if") (parenthesized_expression "(plVar33 != (long *)0x0)" (( "(") (binary_expression "plVar33 != (long *)0x0" (identifier "plVar33") (!= "!=") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);\n        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }\n      }" ({ "{") (do_statement "do {\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        } while (plVar26 != (long *)0x0);" (do "do") (compound_statement "{\n          if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }\n          plVar28 = plVar26;\n        }" ({ "{") (if_statement "if (*(uint *)(plVar28 + 4) < uVar7) {\n            plVar26 = (long *)plVar28[3];\n          }\n          else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }" (if "if") (parenthesized_expression "(*(uint *)(plVar28 + 4) < uVar7)" (( "(") (binary_expression "*(uint *)(plVar28 + 4) < uVar7" (pointer_expression "*(uint *)(plVar28 + 4)" (* "*") (cast_expression "(uint *)(plVar28 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar28 + 4)" (( "(") (binary_expression "plVar28 + 4" (identifier "plVar28") (+ "+") (number_literal "4")) () ")")))) (< "<") (identifier "uVar7")) () ")")) (compound_statement "{\n            plVar26 = (long *)plVar28[3];\n          }" ({ "{") (expression_statement "plVar26 = (long *)plVar28[3];" (assignment_expression "plVar26 = (long *)plVar28[3]" (identifier "plVar26") (= "=") (cast_expression "(long *)plVar28[3]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "plVar28[3]" (identifier "plVar28") ([ "[") (number_literal "3") (] "]")))) (; ";")) (} "}")) (else_clause "else {\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }" (else "else") (compound_statement "{\n            plVar26 = (long *)plVar28[2];\n            plVar27 = plVar28;\n          }" ({ "{") (expression_statement "plVar26 = (long *)plVar28[2];" (assignment_expression "plVar26 = (long *)plVar28[2]" (identifier "plVar26") (= "=") (cast_expression "(long *)plVar28[2]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "plVar28[2]" (identifier "plVar28") ([ "[") (number_literal "2") (] "]")))) (; ";")) (expression_statement "plVar27 = plVar28;" (assignment_expression "plVar27 = plVar28" (identifier "plVar27") (= "=") (identifier "plVar28")) (; ";")) (} "}")))) (expression_statement "plVar28 = plVar26;" (assignment_expression "plVar28 = plVar26" (identifier "plVar28") (= "=") (identifier "plVar26")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(plVar26 != (long *)0x0)" (( "(") (binary_expression "plVar26 != (long *)0x0" (identifier "plVar26") (!= "!=") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (if_statement "if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }" (if "if") (parenthesized_expression "(((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0))" (( "(") (binary_expression "((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)" (parenthesized_expression "((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7))" (( "(") (binary_expression "(plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)" (parenthesized_expression "(plVar9 != plVar27)" (( "(") (binary_expression "plVar9 != plVar27" (identifier "plVar9") (!= "!=") (identifier "plVar27")) () ")")) (&& "&&") (parenthesized_expression "(*(uint *)(plVar27 + 4) <= uVar7)" (( "(") (binary_expression "*(uint *)(plVar27 + 4) <= uVar7" (pointer_expression "*(uint *)(plVar27 + 4)" (* "*") (cast_expression "(uint *)(plVar27 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar27 + 4)" (( "(") (binary_expression "plVar27 + 4" (identifier "plVar27") (+ "+") (number_literal "4")) () ")")))) (<= "<=") (identifier "uVar7")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(plVar27[5] != 0)" (( "(") (binary_expression "plVar27[5] != 0" (subscript_expression "plVar27[5]" (identifier "plVar27") ([ "[") (number_literal "5") (] "]")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n          plVar28 = plVar9;\n          if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }\n          puVar44 = (uint *)0x1;\n        }" ({ "{") (expression_statement "plVar28 = plVar9;" (assignment_expression "plVar28 = plVar9" (identifier "plVar28") (= "=") (identifier "plVar9")) (; ";")) (if_statement "if (uVar46 == 0) {\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }" (if "if") (parenthesized_expression "(uVar46 == 0)" (( "(") (binary_expression "uVar46 == 0" (identifier "uVar46") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);\n            lVar30 = 0;\n            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }\n            puVar44 = (uint *)0x0;\n            cVar12 = '\0';\n            goto LAB_002c5870;\n          }" ({ "{") (do_statement "do {\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            } while (plVar33 != (long *)0x0);" (do "do") (compound_statement "{\n              plVar27 = plVar33;\n              if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }\n              plVar28 = plVar27;\n            }" ({ "{") (expression_statement "plVar27 = plVar33;" (assignment_expression "plVar27 = plVar33" (identifier "plVar27") (= "=") (identifier "plVar33")) (; ";")) (if_statement "if (*(uint *)(plVar27 + 4) < uVar7) {\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }\n              else {\n                plVar33 = (long *)plVar27[2];\n              }" (if "if") (parenthesized_expression "(*(uint *)(plVar27 + 4) < uVar7)" (( "(") (binary_expression "*(uint *)(plVar27 + 4) < uVar7" (pointer_expression "*(uint *)(plVar27 + 4)" (* "*") (cast_expression "(uint *)(plVar27 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar27 + 4)" (( "(") (binary_expression "plVar27 + 4" (identifier "plVar27") (+ "+") (number_literal "4")) () ")")))) (< "<") (identifier "uVar7")) () ")")) (compound_statement "{\n                plVar33 = (long *)plVar27[3];\n                plVar27 = plVar28;\n              }" ({ "{") (expression_statement "plVar33 = (long *)plVar27[3];" (assignment_expression "plVar33 = (long *)plVar27[3]" (identifier "plVar33") (= "=") (cast_expression "(long *)plVar27[3]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "plVar27[3]" (identifier "plVar27") ([ "[") (number_literal "3") (] "]")))) (; ";")) (expression_statement "plVar27 = plVar28;" (assignment_expression "plVar27 = plVar28" (identifier "plVar27") (= "=") (identifier "plVar28")) (; ";")) (} "}")) (else_clause "else {\n                plVar33 = (long *)plVar27[2];\n              }" (else "else") (compound_statement "{\n                plVar33 = (long *)plVar27[2];\n              }" ({ "{") (expression_statement "plVar33 = (long *)plVar27[2];" (assignment_expression "plVar33 = (long *)plVar27[2]" (identifier "plVar33") (= "=") (cast_expression "(long *)plVar27[2]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "plVar27[2]" (identifier "plVar27") ([ "[") (number_literal "2") (] "]")))) (; ";")) (} "}")))) (expression_statement "plVar28 = plVar27;" (assignment_expression "plVar28 = plVar27" (identifier "plVar28") (= "=") (identifier "plVar27")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(plVar33 != (long *)0x0)" (( "(") (binary_expression "plVar33 != (long *)0x0" (identifier "plVar33") (!= "!=") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (expression_statement "lVar30 = 0;" (assignment_expression "lVar30 = 0" (identifier "lVar30") (= "=") (number_literal "0")) (; ";")) (if_statement "if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {\n              lVar30 = plVar27[5];\n            }" (if "if") (parenthesized_expression "((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7))" (( "(") (binary_expression "(plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)" (parenthesized_expression "(plVar9 != plVar27)" (( "(") (binary_expression "plVar9 != plVar27" (identifier "plVar9") (!= "!=") (identifier "plVar27")) () ")")) (&& "&&") (parenthesized_expression "(*(uint *)(plVar27 + 4) <= uVar7)" (( "(") (binary_expression "*(uint *)(plVar27 + 4) <= uVar7" (pointer_expression "*(uint *)(plVar27 + 4)" (* "*") (cast_expression "(uint *)(plVar27 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar27 + 4)" (( "(") (binary_expression "plVar27 + 4" (identifier "plVar27") (+ "+") (number_literal "4")) () ")")))) (<= "<=") (identifier "uVar7")) () ")"))) () ")")) (compound_statement "{\n              lVar30 = plVar27[5];\n            }" ({ "{") (expression_statement "lVar30 = plVar27[5];" (assignment_expression "lVar30 = plVar27[5]" (identifier "lVar30") (= "=") (subscript_expression "plVar27[5]" (identifier "plVar27") ([ "[") (number_literal "5") (] "]"))) (; ";")) (} "}"))) (expression_statement "puVar44 = (uint *)0x0;" (assignment_expression "puVar44 = (uint *)0x0" (identifier "puVar44") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "cVar12 = '\0';" (assignment_expression "cVar12 = '\0'" (identifier "cVar12") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (goto_statement "goto LAB_002c5870;" (goto "goto") (statement_identifier "LAB_002c5870") (; ";")) (} "}"))) (expression_statement "puVar44 = (uint *)0x1;" (assignment_expression "puVar44 = (uint *)0x1" (identifier "puVar44") (= "=") (cast_expression "(uint *)0x1" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (} "}"))) (} "}"))) (labeled_statement "LAB_002c56d8:\n      cVar12 = '\0';" (statement_identifier "LAB_002c56d8") (: ":") (expression_statement "cVar12 = '\0';" (assignment_expression "cVar12 = '\0'" (identifier "cVar12") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";"))) (goto_statement "goto LAB_002c56df;" (goto "goto") (statement_identifier "LAB_002c56df") (; ";")) (} "}"))) (expression_statement "plVar9 = (long *)plVar3[99];" (assignment_expression "plVar9 = (long *)plVar3[99]" (identifier "plVar9") (= "=") (cast_expression "(long *)plVar3[99]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "plVar3[99]" (identifier "plVar3") ([ "[") (number_literal "99") (] "]")))) (; ";")) (expression_statement "plVar33 = plVar3 + 0x62;" (assignment_expression "plVar33 = plVar3 + 0x62" (identifier "plVar33") (= "=") (binary_expression "plVar3 + 0x62" (identifier "plVar3") (+ "+") (number_literal "0x62"))) (; ";")) (if_statement "if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;" (if "if") (parenthesized_expression "((long *)plVar3[99] == (long *)0x0)" (( "(") (binary_expression "(long *)plVar3[99] == (long *)0x0" (cast_expression "(long *)plVar3[99]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "plVar3[99]" (identifier "plVar3") ([ "[") (number_literal "99") (] "]"))) (== "==") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_002c56d8;" (goto "goto") (statement_identifier "LAB_002c56d8") (; ";"))) (do_statement "do {\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    } while ((long *)plVar28[2] != (long *)0x0);" (do "do") (compound_statement "{\n      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }\n      plVar9 = (long *)plVar28[2];\n      plVar33 = plVar28;\n    }" ({ "{") (while_statement "while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }" (while "while") (parenthesized_expression "(plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7)" (( "(") (comma_expression "plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7" (assignment_expression "plVar28 = plVar9" (identifier "plVar28") (= "=") (identifier "plVar9")) (, ",") (binary_expression "*(uint *)(plVar28 + 4) < uVar7" (pointer_expression "*(uint *)(plVar28 + 4)" (* "*") (cast_expression "(uint *)(plVar28 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar28 + 4)" (( "(") (binary_expression "plVar28 + 4" (identifier "plVar28") (+ "+") (number_literal "4")) () ")")))) (< "<") (identifier "uVar7"))) () ")")) (compound_statement "{\n        plVar27 = plVar28 + 3;\n        plVar9 = (long *)*plVar27;\n        plVar28 = plVar33;\n        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;\n      }" ({ "{") (expression_statement "plVar27 = plVar28 + 3;" (assignment_expression "plVar27 = plVar28 + 3" (identifier "plVar27") (= "=") (binary_expression "plVar28 + 3" (identifier "plVar28") (+ "+") (number_literal "3"))) (; ";")) (expression_statement "plVar9 = (long *)*plVar27;" (assignment_expression "plVar9 = (long *)*plVar27" (identifier "plVar9") (= "=") (cast_expression "(long *)*plVar27" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*plVar27" (* "*") (identifier "plVar27")))) (; ";")) (expression_statement "plVar28 = plVar33;" (assignment_expression "plVar28 = plVar33" (identifier "plVar28") (= "=") (identifier "plVar33")) (; ";")) (if_statement "if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;" (if "if") (parenthesized_expression "((long *)*plVar27 == (long *)0x0)" (( "(") (binary_expression "(long *)*plVar27 == (long *)0x0" (cast_expression "(long *)*plVar27" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*plVar27" (* "*") (identifier "plVar27"))) (== "==") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_002c66ba;" (goto "goto") (statement_identifier "LAB_002c66ba") (; ";"))) (} "}"))) (expression_statement "plVar9 = (long *)plVar28[2];" (assignment_expression "plVar9 = (long *)plVar28[2]" (identifier "plVar9") (= "=") (cast_expression "(long *)plVar28[2]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "plVar28[2]" (identifier "plVar28") ([ "[") (number_literal "2") (] "]")))) (; ";")) (expression_statement "plVar33 = plVar28;" (assignment_expression "plVar33 = plVar28" (identifier "plVar33") (= "=") (identifier "plVar28")) (; ";")) (} "}")) (while "while") (parenthesized_expression "((long *)plVar28[2] != (long *)0x0)" (( "(") (binary_expression "(long *)plVar28[2] != (long *)0x0" (cast_expression "(long *)plVar28[2]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "plVar28[2]" (identifier "plVar28") ([ "[") (number_literal "2") (] "]"))) (!= "!=") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (labeled_statement "LAB_002c66ba:\n    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;" (statement_identifier "LAB_002c66ba") (: ":") (if_statement "if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;" (if "if") (parenthesized_expression "(((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0))" (( "(") (binary_expression "((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||\n       (cVar12 = '\0', plVar28[5] == 0)" (parenthesized_expression "((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4)))" (( "(") (binary_expression "(plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))" (parenthesized_expression "(plVar3 + 0x62 == plVar28)" (( "(") (binary_expression "plVar3 + 0x62 == plVar28" (binary_expression "plVar3 + 0x62" (identifier "plVar3") (+ "+") (number_literal "0x62")) (== "==") (identifier "plVar28")) () ")")) (|| "||") (parenthesized_expression "(uVar7 < *(uint *)(plVar28 + 4))" (( "(") (binary_expression "uVar7 < *(uint *)(plVar28 + 4)" (identifier "uVar7") (< "<") (pointer_expression "*(uint *)(plVar28 + 4)" (* "*") (cast_expression "(uint *)(plVar28 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar28 + 4)" (( "(") (binary_expression "plVar28 + 4" (identifier "plVar28") (+ "+") (number_literal "4")) () ")"))))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(cVar12 = '\0', plVar28[5] == 0)" (( "(") (comma_expression "cVar12 = '\0', plVar28[5] == 0" (assignment_expression "cVar12 = '\0'" (identifier "cVar12") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (, ",") (binary_expression "plVar28[5] == 0" (subscript_expression "plVar28[5]" (identifier "plVar28") ([ "[") (number_literal "5") (] "]")) (== "==") (number_literal "0"))) () ")"))) () ")")) (goto_statement "goto LAB_002c56d8;" (goto "goto") (statement_identifier "LAB_002c56d8") (; ";")))) (labeled_statement "LAB_002c509e:\n    local_98._0_1_ = (byte)uVar17;" (statement_identifier "LAB_002c509e") (: ":") (expression_statement "local_98._0_1_ = (byte)uVar17;" (assignment_expression "local_98._0_1_ = (byte)uVar17" (field_expression "local_98._0_1_" (identifier "local_98") (. ".") (field_identifier "_0_1_")) (= "=") (cast_expression "(byte)uVar17" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar17"))) (; ";"))) (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" (identifier "local_d0") (= "=") (cast_expression "(uint *)&local_78" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_78" (& "&") (identifier "local_78")))) (; ";")) (expression_statement "iVar38 = *(int *)(param_2 + 0x30);" (assignment_expression "iVar38 = *(int *)(param_2 + 0x30)" (identifier "iVar38") (= "=") (pointer_expression "*(int *)(param_2 + 0x30)" (* "*") (cast_expression "(int *)(param_2 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x30)" (( "(") (binary_expression "param_2 + 0x30" (identifier "param_2") (+ "+") (number_literal "0x30")) () ")"))))) (; ";")) (expression_statement "cVar13 = FUN_00297400(plVar3,iVar38);" (assignment_expression "cVar13 = FUN_00297400(plVar3,iVar38)" (identifier "cVar13") (= "=") (call_expression "FUN_00297400(plVar3,iVar38)" (identifier "FUN_00297400") (argument_list "(plVar3,iVar38)" (( "(") (identifier "plVar3") (, ",") (identifier "iVar38") () ")")))) (; ";")) (if_statement "if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    \n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }" (if "if") (parenthesized_expression "((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e]))" (( "(") (binary_expression "(cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])" (parenthesized_expression "(cVar13 == '\0')" (( "(") (binary_expression "cVar13 == '\0'" (identifier "cVar13") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(iVar38 != (int)plVar3[0x7e])" (( "(") (binary_expression "iVar38 != (int)plVar3[0x7e]" (identifier "iVar38") (!= "!=") (cast_expression "(int)plVar3[0x7e]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "plVar3[0x7e]" (identifier "plVar3") ([ "[") (number_literal "0x7e") (] "]")))) () ")"))) () ")")) (compound_statement "{\n      if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }\n      if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }\n                    \n      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");\n    }" ({ "{") (if_statement "if (param_8 == (undefined8 *)0x0) {\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }" (if "if") (parenthesized_expression "(param_8 == (undefined8 *)0x0)" (( "(") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        lVar30 = plVar3[99];\n        if (lVar30 == 0) goto LAB_002c64ab;\n        do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );\n      }" ({ "{") (expression_statement "lVar30 = plVar3[99];" (assignment_expression "lVar30 = plVar3[99]" (identifier "lVar30") (= "=") (subscript_expression "plVar3[99]" (identifier "plVar3") ([ "[") (number_literal "99") (] "]"))) (; ";")) (if_statement "if (lVar30 == 0) goto LAB_002c64ab;" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c64ab;" (goto "goto") (statement_identifier "LAB_002c64ab") (; ";"))) (do_statement "do {\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        } while( true );" (do "do") (compound_statement "{\n          if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }\n          if (lVar30 == 0) goto LAB_002c6490;\n        }" ({ "{") (if_statement "if (*(uint *)(lVar30 + 0x20) < uVar7) {\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }\n          else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }" (if "if") (parenthesized_expression "(*(uint *)(lVar30 + 0x20) < uVar7)" (( "(") (binary_expression "*(uint *)(lVar30 + 0x20) < uVar7" (pointer_expression "*(uint *)(lVar30 + 0x20)" (* "*") (cast_expression "(uint *)(lVar30 + 0x20)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x20)" (( "(") (binary_expression "lVar30 + 0x20" (identifier "lVar30") (+ "+") (number_literal "0x20")) () ")")))) (< "<") (identifier "uVar7")) () ")")) (compound_statement "{\n            lVar30 = *(long *)(lVar30 + 0x18);\n          }" ({ "{") (expression_statement "lVar30 = *(long *)(lVar30 + 0x18);" (assignment_expression "lVar30 = *(long *)(lVar30 + 0x18)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(lVar30 + 0x18)" (* "*") (cast_expression "(long *)(lVar30 + 0x18)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x18)" (( "(") (binary_expression "lVar30 + 0x18" (identifier "lVar30") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }" (else "else") (compound_statement "{\n            lVar30 = *(long *)(lVar30 + 0x10);\n          }" ({ "{") (expression_statement "lVar30 = *(long *)(lVar30 + 0x10);" (assignment_expression "lVar30 = *(long *)(lVar30 + 0x10)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(lVar30 + 0x10)" (* "*") (cast_expression "(long *)(lVar30 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x10)" (( "(") (binary_expression "lVar30 + 0x10" (identifier "lVar30") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (} "}")))) (if_statement "if (lVar30 == 0) goto LAB_002c6490;" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c6490;" (goto "goto") (statement_identifier "LAB_002c6490") (; ";"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (if_statement "if (*(char *)(param_8 + 9) != '\0') {\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }" (if "if") (parenthesized_expression "(*(char *)(param_8 + 9) != '\0')" (( "(") (binary_expression "*(char *)(param_8 + 9) != '\0'" (pointer_expression "*(char *)(param_8 + 9)" (* "*") (cast_expression "(char *)(param_8 + 9)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 9)" (( "(") (binary_expression "param_8 + 9" (identifier "param_8") (+ "+") (number_literal "9")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;\n        lVar30 = *(long *)(param_4 + 0x98);\n        if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }\n        FUN_00290a30();\n        goto LAB_002c82c4;\n      }" ({ "{") (if_statement "if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;" (if "if") (parenthesized_expression "(*(int *)((long)param_8 + 0x4c) == -1)" (( "(") (binary_expression "*(int *)((long)param_8 + 0x4c) == -1" (pointer_expression "*(int *)((long)param_8 + 0x4c)" (* "*") (cast_expression "(int *)((long)param_8 + 0x4c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x4c)" (( "(") (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x4c")) () ")")))) (== "==") (number_literal "-1")) () ")")) (goto_statement "goto LAB_002c64ab;" (goto "goto") (statement_identifier "LAB_002c64ab") (; ";"))) (expression_statement "lVar30 = *(long *)(param_4 + 0x98);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x98)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x98)" (* "*") (cast_expression "(long *)(param_4 + 0x98)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x98)" (( "(") (binary_expression "param_4 + 0x98" (identifier "param_4") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (if_statement "if (lVar30 != 0) {\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);\n          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }\n                    \n          FUN_00291e90();\n        }" ({ "{") (expression_statement "local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);" (assignment_expression "local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1)" (identifier "local_e1") (= "=") (cast_expression "(bool)(*(byte *)(lVar30 + 0x20) & 1)" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" (( "(") (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" (* "*") (cast_expression "(byte *)(lVar30 + 0x20)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x20)" (( "(") (binary_expression "lVar30 + 0x20" (identifier "lVar30") (+ "+") (number_literal "0x20")) () ")")))) (& "&") (number_literal "1")) () ")")))) (; ";")) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }" (if "if") (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) != 0)" (( "(") (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) != 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" (( "(") (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" (* "*") (cast_expression "(byte *)(lVar30 + 0x20)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x20)" (( "(") (binary_expression "lVar30 + 0x20" (identifier "lVar30") (+ "+") (number_literal "0x20")) () ")")))) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            bVar49 = uVar47 == 100;\n            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);\n            bVar52 = 0;\n            bVar48 = bVar49;\n            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;\n            param_9 = local_d0;\n            goto LAB_002c5150;\n          }" ({ "{") (expression_statement "bVar49 = uVar47 == 100;" (assignment_expression "bVar49 = uVar47 == 100" (identifier "bVar49") (= "=") (binary_expression "uVar47 == 100" (identifier "uVar47") (== "==") (number_literal "100"))) (; ";")) (expression_statement "local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);" (assignment_expression "local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8)" (identifier "local_68") (= "=") (binary_expression "*(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8)" (pointer_expression "*(int *)((long)param_8 + 0x4c)" (* "*") (cast_expression "(int *)((long)param_8 + 0x4c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x4c)" (( "(") (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x4c")) () ")")))) (+ "+") (pointer_expression "*(int *)(lVar30 + 8)" (* "*") (cast_expression "(int *)(lVar30 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 8)" (( "(") (binary_expression "lVar30 + 8" (identifier "lVar30") (+ "+") (number_literal "8")) () ")")))))) (; ";")) (expression_statement "bVar52 = 0;" (assignment_expression "bVar52 = 0" (identifier "bVar52") (= "=") (number_literal "0")) (; ";")) (expression_statement "bVar48 = bVar49;" (assignment_expression "bVar48 = bVar49" (identifier "bVar48") (= "=") (identifier "bVar49")) (; ";")) (if_statement "if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;" (if "if") (parenthesized_expression "((uVar47 & 0xf7) != 0x85)" (( "(") (binary_expression "(uVar47 & 0xf7) != 0x85" (parenthesized_expression "(uVar47 & 0xf7)" (( "(") (binary_expression "uVar47 & 0xf7" (identifier "uVar47") (& "&") (number_literal "0xf7")) () ")")) (!= "!=") (number_literal "0x85")) () ")")) (goto_statement "goto LAB_002c64da;" (goto "goto") (statement_identifier "LAB_002c64da") (; ";"))) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" (identifier "param_9") (= "=") (identifier "local_d0")) (; ";")) (goto_statement "goto LAB_002c5150;" (goto "goto") (statement_identifier "LAB_002c5150") (; ";")) (} "}"))) (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" (identifier "FUN_00291e90") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_00290a30();" (call_expression "FUN_00290a30()" (identifier "FUN_00290a30") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto LAB_002c82c4;" (goto "goto") (statement_identifier "LAB_002c82c4") (; ";")) (} "}"))) (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x2d5f,"relocate")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x2d5f") (, ",") (string_literal ""relocate"" (" """) (string_content "relocate") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (param_8 == (undefined8 *)0x0) {\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }" (if "if") (parenthesized_expression "(param_8 == (undefined8 *)0x0)" (( "(") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_002c56df:\n      bVar48 = uVar47 == 100;\n      goto LAB_002c4e20;\n    }" ({ "{") (labeled_statement "LAB_002c56df:\n      bVar48 = uVar47 == 100;" (statement_identifier "LAB_002c56df") (: ":") (expression_statement "bVar48 = uVar47 == 100;" (assignment_expression "bVar48 = uVar47 == 100" (identifier "bVar48") (= "=") (binary_expression "uVar47 == 100" (identifier "uVar47") (== "==") (number_literal "100"))) (; ";"))) (goto_statement "goto LAB_002c4e20;" (goto "goto") (statement_identifier "LAB_002c4e20") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    \n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }" (else "else") (compound_statement "{\n    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;\n    bVar48 = (bVar11 & 0x3c) == 0x3c;\n    puVar44 = (uint *)(ulong)bVar48;\n    bVar49 = (bVar11 & 0x30) == 0x20;\n    uVar17 = (uint)bVar49;\n    local_e1 = bVar49 || bVar48;\n    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }\n    local_d0 = (uint *)&local_78;\n    iVar38 = 0;\n    if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }\n                    \n    cVar12 = FUN_00228fa0(param_8,iVar38);\n    if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }\n    lVar30 = 9;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"_gp_disp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);\n    lVar30 = 0xf;\n    bVar49 = !bVar48 && !bVar50;\n    bVar50 = bVar49 < bVar48;\n    bVar51 = bVar49 == bVar48;\n    pbVar39 = (byte *)*param_8;\n    pbVar41 = (byte *)"__gnu_local_gp";\n    do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);\n    if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }\n    if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }\n    if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }\n  }" ({ "{") (expression_statement "bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;" (assignment_expression "bVar11 = *(byte *)((long)param_8 + 0x39) >> 2" (identifier "bVar11") (= "=") (binary_expression "*(byte *)((long)param_8 + 0x39) >> 2" (pointer_expression "*(byte *)((long)param_8 + 0x39)" (* "*") (cast_expression "(byte *)((long)param_8 + 0x39)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x39)" (( "(") (binary_expression "(long)param_8 + 0x39" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x39")) () ")")))) (>> ">>") (number_literal "2"))) (; ";")) (expression_statement "bVar48 = (bVar11 & 0x3c) == 0x3c;" (assignment_expression "bVar48 = (bVar11 & 0x3c) == 0x3c" (identifier "bVar48") (= "=") (binary_expression "(bVar11 & 0x3c) == 0x3c" (parenthesized_expression "(bVar11 & 0x3c)" (( "(") (binary_expression "bVar11 & 0x3c" (identifier "bVar11") (& "&") (number_literal "0x3c")) () ")")) (== "==") (number_literal "0x3c"))) (; ";")) (expression_statement "puVar44 = (uint *)(ulong)bVar48;" (assignment_expression "puVar44 = (uint *)(ulong)bVar48" (identifier "puVar44") (= "=") (cast_expression "(uint *)(ulong)bVar48" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (cast_expression "(ulong)bVar48" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar48")))) (; ";")) (expression_statement "bVar49 = (bVar11 & 0x30) == 0x20;" (assignment_expression "bVar49 = (bVar11 & 0x30) == 0x20" (identifier "bVar49") (= "=") (binary_expression "(bVar11 & 0x30) == 0x20" (parenthesized_expression "(bVar11 & 0x30)" (( "(") (binary_expression "bVar11 & 0x30" (identifier "bVar11") (& "&") (number_literal "0x30")) () ")")) (== "==") (number_literal "0x20"))) (; ";")) (expression_statement "uVar17 = (uint)bVar49;" (assignment_expression "uVar17 = (uint)bVar49" (identifier "uVar17") (= "=") (cast_expression "(uint)bVar49" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar49"))) (; ";")) (expression_statement "local_e1 = bVar49 || bVar48;" (assignment_expression "local_e1 = bVar49 || bVar48" (identifier "local_e1") (= "=") (binary_expression "bVar49 || bVar48" (identifier "bVar49") (|| "||") (identifier "bVar48"))) (; ";")) (if_statement "if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }\n    else {\n      local_e1 = false;\n    }" (if "if") (parenthesized_expression "((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0))" (( "(") (binary_expression "(bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)" (parenthesized_expression "(bVar49 || bVar48)" (( "(") (binary_expression "bVar49 || bVar48" (identifier "bVar49") (|| "||") (identifier "bVar48")) () ")")) (&& "&&") (parenthesized_expression "(iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)" (( "(") (comma_expression "iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,0)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,0)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,0)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (number_literal "0") () ")")))) (, ",") (binary_expression "iVar38 != 0" (identifier "iVar38") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n      local_68 = FUN_001d7270(param_9,plVar3,0);\n      local_68 = local_68 | 1;\n      param_9 = (uint *)&local_78;\n    }" ({ "{") (expression_statement "local_68 = FUN_001d7270(param_9,plVar3,0);" (assignment_expression "local_68 = FUN_001d7270(param_9,plVar3,0)" (identifier "local_68") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,0)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,0)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "local_68 = local_68 | 1;" (assignment_expression "local_68 = local_68 | 1" (identifier "local_68") (= "=") (binary_expression "local_68 | 1" (identifier "local_68") (| "|") (number_literal "1"))) (; ";")) (expression_statement "param_9 = (uint *)&local_78;" (assignment_expression "param_9 = (uint *)&local_78" (identifier "param_9") (= "=") (cast_expression "(uint *)&local_78" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_78" (& "&") (identifier "local_78")))) (; ";")) (} "}")) (else_clause "else {\n      local_e1 = false;\n    }" (else "else") (compound_statement "{\n      local_e1 = false;\n    }" ({ "{") (expression_statement "local_e1 = false;" (assignment_expression "local_e1 = false" (identifier "local_e1") (= "=") (false "false")) (; ";")) (} "}")))) (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" (identifier "local_d0") (= "=") (cast_expression "(uint *)&local_78" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_78" (& "&") (identifier "local_78")))) (; ";")) (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" (identifier "iVar38") (= "=") (number_literal "0")) (; ";")) (if_statement "if (uVar47 - 1 < 0xf9) {\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }" (if "if") (parenthesized_expression "(uVar47 - 1 < 0xf9)" (( "(") (binary_expression "uVar47 - 1 < 0xf9" (binary_expression "uVar47 - 1" (identifier "uVar47") (- "-") (number_literal "1")) (< "<") (number_literal "0xf9")) () ")")) (compound_statement "{\n      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];\n    }" ({ "{") (expression_statement "iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];" (assignment_expression "iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1]" (identifier "iVar38") (= "=") (cast_expression "(int)(char)(&DAT_0055e3e0)[uVar47 - 1]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (cast_expression "(char)(&DAT_0055e3e0)[uVar47 - 1]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "(&DAT_0055e3e0)[uVar47 - 1]" (parenthesized_expression "(&DAT_0055e3e0)" (( "(") (pointer_expression "&DAT_0055e3e0" (& "&") (identifier "DAT_0055e3e0")) () ")")) ([ "[") (binary_expression "uVar47 - 1" (identifier "uVar47") (- "-") (number_literal "1")) (] "]"))))) (; ";")) (} "}"))) (expression_statement "cVar12 = FUN_00228fa0(param_8,iVar38);" (assignment_expression "cVar12 = FUN_00228fa0(param_8,iVar38)" (identifier "cVar12") (= "=") (call_expression "FUN_00228fa0(param_8,iVar38)" (identifier "FUN_00228fa0") (argument_list "(param_8,iVar38)" (( "(") (identifier "param_8") (, ",") (identifier "iVar38") () ")")))) (; ";")) (if_statement "if (cVar12 == '\0') {\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }\n    else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }" (if "if") (parenthesized_expression "(cVar12 == '\0')" (( "(") (binary_expression "cVar12 == '\0'" (identifier "cVar12") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      bVar48 = false;\n      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';\n      if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }\n    }" ({ "{") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (expression_statement "bVar50 = *(char *)((long)param_8 + 0x65) == '\0';" (assignment_expression "bVar50 = *(char *)((long)param_8 + 0x65) == '\0'" (identifier "bVar50") (= "=") (binary_expression "*(char *)((long)param_8 + 0x65) == '\0'" (pointer_expression "*(char *)((long)param_8 + 0x65)" (* "*") (cast_expression "(char *)((long)param_8 + 0x65)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x65)" (( "(") (binary_expression "(long)param_8 + 0x65" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x65")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) (; ";")) (if_statement "if (!bVar50) {\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }" (if "if") (parenthesized_expression "(!bVar50)" (( "(") (unary_expression "!bVar50" (! "!") (identifier "bVar50")) () ")")) (compound_statement "{\nLAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);\n        if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));\n        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);\n        bVar50 = uVar16 == 0;\n        goto LAB_002c4c88;\n      }" ({ "{") (labeled_statement "LAB_002c4c60:\n        lVar30 = *(long *)(param_4 + 0xb8);" (statement_identifier "LAB_002c4c60") (: ":") (expression_statement "lVar30 = *(long *)(param_4 + 0xb8);" (assignment_expression "lVar30 = *(long *)(param_4 + 0xb8)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0xb8)" (* "*") (cast_expression "(long *)(param_4 + 0xb8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0xb8)" (( "(") (binary_expression "param_4 + 0xb8" (identifier "param_4") (+ "+") (number_literal "0xb8")) () ")"))))) (; ";"))) (if_statement "if (lVar30 == 0) {\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          FUN_00290a10();\nLAB_002c81eb:\n          FUN_00290a50();\nLAB_002c81f0:\n          FUN_00290a70();\nLAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");\n        }" ({ "{") (expression_statement "FUN_00290a10();" (call_expression "FUN_00290a10()" (identifier "FUN_00290a10") (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_002c81eb:\n          FUN_00290a50();" (statement_identifier "LAB_002c81eb") (: ":") (expression_statement "FUN_00290a50();" (call_expression "FUN_00290a50()" (identifier "FUN_00290a50") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c81f0:\n          FUN_00290a70();" (statement_identifier "LAB_002c81f0") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c81f5:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");" (statement_identifier "LAB_002c81f5") (: ":") (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x2e88,"relocate")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x2e88") (, ",") (string_literal ""relocate"" (" """) (string_content "relocate") (" """)) () ")"))) (; ";"))) (} "}"))) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }" (if "if") (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) == 0)" (( "(") (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) == 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" (( "(") (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" (* "*") (cast_expression "(byte *)(lVar30 + 0x20)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x20)" (( "(") (binary_expression "lVar30 + 0x20" (identifier "lVar30") (+ "+") (number_literal "0x20")) () ")")))) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n          FUN_00291e90();\n        }" ({ "{") (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" (identifier "FUN_00291e90") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));" (assignment_expression "bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8))" (identifier "bVar48") (= "=") (call_expression "CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8))" (identifier "CARRY4") (argument_list "(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8))" (( "(") (pointer_expression "*(uint *)((long)param_8 + 0x54)" (* "*") (cast_expression "(uint *)((long)param_8 + 0x54)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x54)" (( "(") (binary_expression "(long)param_8 + 0x54" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x54")) () ")")))) (, ",") (pointer_expression "*(uint *)(lVar30 + 8)" (* "*") (cast_expression "(uint *)(lVar30 + 8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 8)" (( "(") (binary_expression "lVar30 + 8" (identifier "lVar30") (+ "+") (number_literal "8")) () ")")))) () ")")))) (; ";")) (expression_statement "uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);" (assignment_expression "uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8)" (identifier "uVar16") (= "=") (binary_expression "*(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8)" (pointer_expression "*(uint *)((long)param_8 + 0x54)" (* "*") (cast_expression "(uint *)((long)param_8 + 0x54)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x54)" (( "(") (binary_expression "(long)param_8 + 0x54" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x54")) () ")")))) (+ "+") (pointer_expression "*(uint *)(lVar30 + 8)" (* "*") (cast_expression "(uint *)(lVar30 + 8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 8)" (( "(") (binary_expression "lVar30 + 8" (identifier "lVar30") (+ "+") (number_literal "8")) () ")")))))) (; ";")) (expression_statement "bVar50 = uVar16 == 0;" (assignment_expression "bVar50 = uVar16 == 0" (identifier "bVar50") (= "=") (binary_expression "uVar16 == 0" (identifier "uVar16") (== "==") (number_literal "0"))) (; ";")) (goto_statement "goto LAB_002c4c88;" (goto "goto") (statement_identifier "LAB_002c4c88") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }" (else "else") (compound_statement "{\n      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }\nLAB_002c4c88:\n      local_68 = uVar16;\n      param_9 = local_d0;\n    }" ({ "{") (if_statement "if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;" (if "if") (parenthesized_expression "(*(char *)((long)param_8 + 0x65) != '\0')" (( "(") (binary_expression "*(char *)((long)param_8 + 0x65) != '\0'" (pointer_expression "*(char *)((long)param_8 + 0x65)" (* "*") (cast_expression "(char *)((long)param_8 + 0x65)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x65)" (( "(") (binary_expression "(long)param_8 + 0x65" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x65")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_002c4c60;" (goto "goto") (statement_identifier "LAB_002c4c60") (; ";"))) (expression_statement "lVar30 = *(long *)(param_4 + 0x30);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x30)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x30)" (* "*") (cast_expression "(long *)(param_4 + 0x30)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x30)" (( "(") (binary_expression "param_4 + 0x30" (identifier "param_4") (+ "+") (number_literal "0x30")) () ")"))))) (; ";")) (if_statement "if (*(int *)(param_8 + 0xd) == -1) {\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }\n      else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }" (if "if") (parenthesized_expression "(*(int *)(param_8 + 0xd) == -1)" (( "(") (binary_expression "*(int *)(param_8 + 0xd) == -1" (pointer_expression "*(int *)(param_8 + 0xd)" (* "*") (cast_expression "(int *)(param_8 + 0xd)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 0xd)" (( "(") (binary_expression "param_8 + 0xd" (identifier "param_8") (+ "+") (number_literal "0xd")) () ")")))) (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n        if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }\n        if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        bVar11 = *(byte *)(param_4 + 0x14);\n        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }\n        bVar48 = false;\n        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n        if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }\n        uVar17 = (uint)bVar11;\n      }" ({ "{") (if_statement "if (lVar30 == 0) {\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_002c8217:\n          FUN_00290a50();\n          goto LAB_002c821c;\n        }" ({ "{") (labeled_statement "LAB_002c8217:\n          FUN_00290a50();" (statement_identifier "LAB_002c8217") (: ":") (expression_statement "FUN_00290a50();" (call_expression "FUN_00290a50()" (identifier "FUN_00290a50") (argument_list "()" (( "(") () ")"))) (; ";"))) (goto_statement "goto LAB_002c821c;" (goto "goto") (statement_identifier "LAB_002c821c") (; ";")) (} "}"))) (if_statement "if (*(int *)((long)param_8 + 0x6c) == -1) {\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }" (if "if") (parenthesized_expression "(*(int *)((long)param_8 + 0x6c) == -1)" (( "(") (binary_expression "*(int *)((long)param_8 + 0x6c) == -1" (pointer_expression "*(int *)((long)param_8 + 0x6c)" (* "*") (cast_expression "(int *)((long)param_8 + 0x6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x6c)" (( "(") (binary_expression "(long)param_8 + 0x6c" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x6c")) () ")")))) (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n                    \n          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");\n        }" ({ "{") (expression_statement "FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x9ed,"comp_entry_address")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x9ed") (, ",") (string_literal ""comp_entry_address"" (" """) (string_content "comp_entry_address") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }" (if "if") (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) == 0)" (( "(") (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) == 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" (( "(") (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" (* "*") (cast_expression "(byte *)(lVar30 + 0x20)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x20)" (( "(") (binary_expression "lVar30 + 0x20" (identifier "lVar30") (+ "+") (number_literal "0x20")) () ")")))) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n          FUN_00291e90();\n        }" ({ "{") (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" (identifier "FUN_00291e90") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "bVar11 = *(byte *)(param_4 + 0x14);" (assignment_expression "bVar11 = *(byte *)(param_4 + 0x14)" (identifier "bVar11") (= "=") (pointer_expression "*(byte *)(param_4 + 0x14)" (* "*") (cast_expression "(byte *)(param_4 + 0x14)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x14)" (( "(") (binary_expression "param_4 + 0x14" (identifier "param_4") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (expression_statement "uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);" (assignment_expression "uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8)" (identifier "uVar16") (= "=") (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                 *(int *)(lVar30 + 0x68)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1" (pointer_expression "*(int *)((long)param_8 + 0x6c)" (* "*") (cast_expression "(int *)((long)param_8 + 0x6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x6c)" (( "(") (binary_expression "(long)param_8 + 0x6c" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x6c")) () ")")))) (+ "+") (number_literal "1")) (+ "+") (pointer_expression "*(int *)(lVar30 + 0x68)" (* "*") (cast_expression "(int *)(lVar30 + 0x68)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x68)" (( "(") (binary_expression "lVar30 + 0x68" (identifier "lVar30") (+ "+") (number_literal "0x68")) () ")"))))) (+ "+") (pointer_expression "*(int *)(lVar30 + 0x60)" (* "*") (cast_expression "(int *)(lVar30 + 0x60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x60)" (( "(") (binary_expression "lVar30 + 0x60" (identifier "lVar30") (+ "+") (number_literal "0x60")) () ")"))))) (+ "+") (pointer_expression "*(int *)(lVar30 + 8)" (* "*") (cast_expression "(int *)(lVar30 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 8)" (( "(") (binary_expression "lVar30 + 8" (identifier "lVar30") (+ "+") (number_literal "8")) () ")")))))) (; ";")) (if_statement "if (bVar11 == 0) {\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }" (if "if") (parenthesized_expression "(bVar11 == 0)" (( "(") (binary_expression "bVar11 == 0" (identifier "bVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          FUN_00290d80();\nLAB_002c832e:\n          FUN_00290a70();\nLAB_002c8333:\n          FUN_00290a70();\nLAB_002c8338:\n          FUN_00290a70();\nLAB_002c833d:\n          FUN_00290a50();\nLAB_002c8342:\n          FUN_00290e30();\nLAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");\n        }" ({ "{") (expression_statement "FUN_00290d80();" (call_expression "FUN_00290d80()" (identifier "FUN_00290d80") (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_002c832e:\n          FUN_00290a70();" (statement_identifier "LAB_002c832e") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c8333:\n          FUN_00290a70();" (statement_identifier "LAB_002c8333") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c8338:\n          FUN_00290a70();" (statement_identifier "LAB_002c8338") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c833d:\n          FUN_00290a50();" (statement_identifier "LAB_002c833d") (: ":") (expression_statement "FUN_00290a50();" (call_expression "FUN_00290a50()" (identifier "FUN_00290a50") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c8342:\n          FUN_00290e30();" (statement_identifier "LAB_002c8342") (: ":") (expression_statement "FUN_00290e30();" (call_expression "FUN_00290e30()" (identifier "FUN_00290e30") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c8347:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");" (statement_identifier "LAB_002c8347") (: ":") (expression_statement "FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x895,"get_primary_got_offset")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x895") (, ",") (string_literal ""get_primary_got_offset"" (" """) (string_content "get_primary_got_offset") (" """)) () ")"))) (; ";"))) (} "}"))) (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (expression_statement "bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;" (assignment_expression "bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0" (identifier "bVar50") (= "=") (binary_expression "(*(uint *)(param_4 + 0x10) & 0x2000000) == 0" (parenthesized_expression "(*(uint *)(param_4 + 0x10) & 0x2000000)" (( "(") (binary_expression "*(uint *)(param_4 + 0x10) & 0x2000000" (pointer_expression "*(uint *)(param_4 + 0x10)" (* "*") (cast_expression "(uint *)(param_4 + 0x10)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x10)" (( "(") (binary_expression "param_4 + 0x10" (identifier "param_4") (+ "+") (number_literal "0x10")) () ")")))) (& "&") (number_literal "0x2000000")) () ")")) (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar50) {\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }" (if "if") (parenthesized_expression "(bVar50)" (( "(") (identifier "bVar50") () ")")) (compound_statement "{\n          puVar44 = (uint *)(ulong)bVar11;\n          bVar11 = bVar49;\n        }" ({ "{") (expression_statement "puVar44 = (uint *)(ulong)bVar11;" (assignment_expression "puVar44 = (uint *)(ulong)bVar11" (identifier "puVar44") (= "=") (cast_expression "(uint *)(ulong)bVar11" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (cast_expression "(ulong)bVar11" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar11")))) (; ";")) (expression_statement "bVar11 = bVar49;" (assignment_expression "bVar11 = bVar49" (identifier "bVar11") (= "=") (identifier "bVar49")) (; ";")) (} "}"))) (expression_statement "uVar17 = (uint)bVar11;" (assignment_expression "uVar17 = (uint)bVar11" (identifier "uVar17") (= "=") (cast_expression "(uint)bVar11" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar11"))) (; ";")) (} "}")) (else_clause "else {\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }" (else "else") (compound_statement "{\n        if (lVar30 == 0) goto LAB_002c81eb;\n        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }\n        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);\n        puVar44 = (uint *)0x0;\n        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));\n        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);\n        bVar50 = uVar16 == 0;\n        uVar17 = 0;\n      }" ({ "{") (if_statement "if (lVar30 == 0) goto LAB_002c81eb;" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c81eb;" (goto "goto") (statement_identifier "LAB_002c81eb") (; ";"))) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n          FUN_00291e90();\n        }" (if "if") (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) == 0)" (( "(") (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) == 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" (( "(") (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" (* "*") (cast_expression "(byte *)(lVar30 + 0x20)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x20)" (( "(") (binary_expression "lVar30 + 0x20" (identifier "lVar30") (+ "+") (number_literal "0x20")) () ")")))) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n          FUN_00291e90();\n        }" ({ "{") (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" (identifier "FUN_00291e90") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);" (assignment_expression "uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8)" (identifier "uVar16") (= "=") (binary_expression "*(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8)" (pointer_expression "*(int *)(param_8 + 0xd)" (* "*") (cast_expression "(int *)(param_8 + 0xd)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 0xd)" (( "(") (binary_expression "param_8 + 0xd" (identifier "param_8") (+ "+") (number_literal "0xd")) () ")")))) (+ "+") (pointer_expression "*(int *)(lVar30 + 8)" (* "*") (cast_expression "(int *)(lVar30 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 8)" (( "(") (binary_expression "lVar30 + 8" (identifier "lVar30") (+ "+") (number_literal "8")) () ")")))))) (; ";")) (expression_statement "puVar44 = (uint *)0x0;" (assignment_expression "puVar44 = (uint *)0x0" (identifier "puVar44") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));" (assignment_expression "bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68))" (identifier "bVar48") (= "=") (call_expression "CARRY4(uVar16,*(uint *)(lVar30 + 0x68))" (identifier "CARRY4") (argument_list "(uVar16,*(uint *)(lVar30 + 0x68))" (( "(") (identifier "uVar16") (, ",") (pointer_expression "*(uint *)(lVar30 + 0x68)" (* "*") (cast_expression "(uint *)(lVar30 + 0x68)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x68)" (( "(") (binary_expression "lVar30 + 0x68" (identifier "lVar30") (+ "+") (number_literal "0x68")) () ")")))) () ")")))) (; ";")) (expression_statement "uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);" (assignment_expression "uVar16 = uVar16 + *(uint *)(lVar30 + 0x68)" (identifier "uVar16") (= "=") (binary_expression "uVar16 + *(uint *)(lVar30 + 0x68)" (identifier "uVar16") (+ "+") (pointer_expression "*(uint *)(lVar30 + 0x68)" (* "*") (cast_expression "(uint *)(lVar30 + 0x68)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x68)" (( "(") (binary_expression "lVar30 + 0x68" (identifier "lVar30") (+ "+") (number_literal "0x68")) () ")")))))) (; ";")) (expression_statement "bVar50 = uVar16 == 0;" (assignment_expression "bVar50 = uVar16 == 0" (identifier "bVar50") (= "=") (binary_expression "uVar16 == 0" (identifier "uVar16") (== "==") (number_literal "0"))) (; ";")) (expression_statement "uVar17 = 0;" (assignment_expression "uVar17 = 0" (identifier "uVar17") (= "=") (number_literal "0")) (; ";")) (} "}")))) (labeled_statement "LAB_002c4c88:\n      local_68 = uVar16;" (statement_identifier "LAB_002c4c88") (: ":") (expression_statement "local_68 = uVar16;" (assignment_expression "local_68 = uVar16" (identifier "local_68") (= "=") (identifier "uVar16")) (; ";"))) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" (identifier "param_9") (= "=") (identifier "local_d0")) (; ";")) (} "}")))) (expression_statement "lVar30 = 9;" (assignment_expression "lVar30 = 9" (identifier "lVar30") (= "=") (number_literal "9")) (; ";")) (expression_statement "pbVar39 = (byte *)*param_8;" (assignment_expression "pbVar39 = (byte *)*param_8" (identifier "pbVar39") (= "=") (cast_expression "(byte *)*param_8" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*param_8" (* "*") (identifier "param_8")))) (; ";")) (expression_statement "pbVar41 = (byte *)"_gp_disp";" (assignment_expression "pbVar41 = (byte *)"_gp_disp"" (identifier "pbVar41") (= "=") (cast_expression "(byte *)"_gp_disp"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal ""_gp_disp"" (" """) (string_content "_gp_disp") (" """)))) (; ";")) (do_statement "do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar50);" (do "do") (compound_statement "{\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar48 = *pbVar39 < *pbVar41;\n      bVar50 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    }" ({ "{") (if_statement "if (lVar30 == 0) break;" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar30 = lVar30 + -1;" (assignment_expression "lVar30 = lVar30 + -1" (identifier "lVar30") (= "=") (binary_expression "lVar30 + -1" (identifier "lVar30") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar48 = *pbVar39 < *pbVar41;" (assignment_expression "bVar48 = *pbVar39 < *pbVar41" (identifier "bVar48") (= "=") (binary_expression "*pbVar39 < *pbVar41" (pointer_expression "*pbVar39" (* "*") (identifier "pbVar39")) (< "<") (pointer_expression "*pbVar41" (* "*") (identifier "pbVar41")))) (; ";")) (expression_statement "bVar50 = *pbVar39 == *pbVar41;" (assignment_expression "bVar50 = *pbVar39 == *pbVar41" (identifier "bVar50") (= "=") (binary_expression "*pbVar39 == *pbVar41" (pointer_expression "*pbVar39" (* "*") (identifier "pbVar39")) (== "==") (pointer_expression "*pbVar41" (* "*") (identifier "pbVar41")))) (; ";")) (expression_statement "pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;" (assignment_expression "pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1" (identifier "pbVar39") (= "=") (binary_expression "pbVar39 + (ulong)bVar52 * -2 + 1" (binary_expression "pbVar39 + (ulong)bVar52 * -2" (identifier "pbVar39") (+ "+") (binary_expression "(ulong)bVar52 * -2" (cast_expression "(ulong)bVar52" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar52")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;" (assignment_expression "pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1" (identifier "pbVar41") (= "=") (binary_expression "pbVar41 + (ulong)bVar52 * -2 + 1" (binary_expression "pbVar41 + (ulong)bVar52 * -2" (identifier "pbVar41") (+ "+") (binary_expression "(ulong)bVar52 * -2" (cast_expression "(ulong)bVar52" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar52")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar50)" (( "(") (identifier "bVar50") () ")")) (; ";")) (expression_statement "lVar30 = 0xf;" (assignment_expression "lVar30 = 0xf" (identifier "lVar30") (= "=") (number_literal "0xf")) (; ";")) (expression_statement "bVar49 = !bVar48 && !bVar50;" (assignment_expression "bVar49 = !bVar48 && !bVar50" (identifier "bVar49") (= "=") (binary_expression "!bVar48 && !bVar50" (unary_expression "!bVar48" (! "!") (identifier "bVar48")) (&& "&&") (unary_expression "!bVar50" (! "!") (identifier "bVar50")))) (; ";")) (expression_statement "bVar50 = bVar49 < bVar48;" (assignment_expression "bVar50 = bVar49 < bVar48" (identifier "bVar50") (= "=") (binary_expression "bVar49 < bVar48" (identifier "bVar49") (< "<") (identifier "bVar48"))) (; ";")) (expression_statement "bVar51 = bVar49 == bVar48;" (assignment_expression "bVar51 = bVar49 == bVar48" (identifier "bVar51") (= "=") (binary_expression "bVar49 == bVar48" (identifier "bVar49") (== "==") (identifier "bVar48"))) (; ";")) (expression_statement "pbVar39 = (byte *)*param_8;" (assignment_expression "pbVar39 = (byte *)*param_8" (identifier "pbVar39") (= "=") (cast_expression "(byte *)*param_8" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*param_8" (* "*") (identifier "param_8")))) (; ";")) (expression_statement "pbVar41 = (byte *)"__gnu_local_gp";" (assignment_expression "pbVar41 = (byte *)"__gnu_local_gp"" (identifier "pbVar41") (= "=") (cast_expression "(byte *)"__gnu_local_gp"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal ""__gnu_local_gp"" (" """) (string_content "__gnu_local_gp") (" """)))) (; ";")) (do_statement "do {\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    } while (bVar51);" (do "do") (compound_statement "{\n      if (lVar30 == 0) break;\n      lVar30 = lVar30 + -1;\n      bVar50 = *pbVar39 < *pbVar41;\n      bVar51 = *pbVar39 == *pbVar41;\n      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;\n      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;\n    }" ({ "{") (if_statement "if (lVar30 == 0) break;" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar30 = lVar30 + -1;" (assignment_expression "lVar30 = lVar30 + -1" (identifier "lVar30") (= "=") (binary_expression "lVar30 + -1" (identifier "lVar30") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar50 = *pbVar39 < *pbVar41;" (assignment_expression "bVar50 = *pbVar39 < *pbVar41" (identifier "bVar50") (= "=") (binary_expression "*pbVar39 < *pbVar41" (pointer_expression "*pbVar39" (* "*") (identifier "pbVar39")) (< "<") (pointer_expression "*pbVar41" (* "*") (identifier "pbVar41")))) (; ";")) (expression_statement "bVar51 = *pbVar39 == *pbVar41;" (assignment_expression "bVar51 = *pbVar39 == *pbVar41" (identifier "bVar51") (= "=") (binary_expression "*pbVar39 == *pbVar41" (pointer_expression "*pbVar39" (* "*") (identifier "pbVar39")) (== "==") (pointer_expression "*pbVar41" (* "*") (identifier "pbVar41")))) (; ";")) (expression_statement "pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;" (assignment_expression "pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1" (identifier "pbVar39") (= "=") (binary_expression "pbVar39 + (ulong)bVar52 * -2 + 1" (binary_expression "pbVar39 + (ulong)bVar52 * -2" (identifier "pbVar39") (+ "+") (binary_expression "(ulong)bVar52 * -2" (cast_expression "(ulong)bVar52" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar52")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;" (assignment_expression "pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1" (identifier "pbVar41") (= "=") (binary_expression "pbVar41 + (ulong)bVar52 * -2 + 1" (binary_expression "pbVar41 + (ulong)bVar52 * -2" (identifier "pbVar41") (+ "+") (binary_expression "(ulong)bVar52 * -2" (cast_expression "(ulong)bVar52" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar52")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar51)" (( "(") (identifier "bVar51") () ")")) (; ";")) (if_statement "if (bVar49 == bVar48) {\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }\n    else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }" (if "if") (parenthesized_expression "(bVar49 == bVar48)" (( "(") (binary_expression "bVar49 == bVar48" (identifier "bVar49") (== "==") (identifier "bVar48")) () ")")) (compound_statement "{\n      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;\n      if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;\n      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }\n      cVar12 = '\x01';\n    }" ({ "{") (expression_statement "bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;" (assignment_expression "bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1" (identifier "bVar52") (= "=") (binary_expression "*(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1" (binary_expression "*(byte *)((long)plVar3 + 0x36c) >> 1 & 1" (binary_expression "*(byte *)((long)plVar3 + 0x36c) >> 1" (pointer_expression "*(byte *)((long)plVar3 + 0x36c)" (* "*") (cast_expression "(byte *)((long)plVar3 + 0x36c)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)plVar3 + 0x36c)" (( "(") (binary_expression "(long)plVar3 + 0x36c" (cast_expression "(long)plVar3" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "plVar3")) (+ "+") (number_literal "0x36c")) () ")")))) (>> ">>") (number_literal "1")) (& "&") (number_literal "1")) (^ "^") (number_literal "1"))) (; ";")) (if_statement "if ((!bVar50 && !bVar51) == bVar50) {\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }\n      else if (bVar52 == 0) goto LAB_002c5078;" (if "if") (parenthesized_expression "((!bVar50 && !bVar51) == bVar50)" (( "(") (binary_expression "(!bVar50 && !bVar51) == bVar50" (parenthesized_expression "(!bVar50 && !bVar51)" (( "(") (binary_expression "!bVar50 && !bVar51" (unary_expression "!bVar50" (! "!") (identifier "bVar50")) (&& "&&") (unary_expression "!bVar51" (! "!") (identifier "bVar51"))) () ")")) (== "==") (identifier "bVar50")) () ")")) (compound_statement "{\n        if (bVar52 == 0) goto LAB_002c51e0;\n      }" ({ "{") (if_statement "if (bVar52 == 0) goto LAB_002c51e0;" (if "if") (parenthesized_expression "(bVar52 == 0)" (( "(") (binary_expression "bVar52 == 0" (identifier "bVar52") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c51e0;" (goto "goto") (statement_identifier "LAB_002c51e0") (; ";"))) (} "}")) (else_clause "else if (bVar52 == 0) goto LAB_002c5078;" (else "else") (if_statement "if (bVar52 == 0) goto LAB_002c5078;" (if "if") (parenthesized_expression "(bVar52 == 0)" (( "(") (binary_expression "bVar52 == 0" (identifier "bVar52") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c5078;" (goto "goto") (statement_identifier "LAB_002c5078") (; ";"))))) (if_statement "if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))\n      {\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }" (if "if") (parenthesized_expression "(((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))" (( "(") (binary_expression "((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40)))" (parenthesized_expression "((1 < uVar47 - 0x68) && (1 < uVar47 - 5))" (( "(") (binary_expression "(1 < uVar47 - 0x68) && (1 < uVar47 - 5)" (parenthesized_expression "(1 < uVar47 - 0x68)" (( "(") (binary_expression "1 < uVar47 - 0x68" (number_literal "1") (< "<") (binary_expression "uVar47 - 0x68" (identifier "uVar47") (- "-") (number_literal "0x68"))) () ")")) (&& "&&") (parenthesized_expression "(1 < uVar47 - 5)" (( "(") (binary_expression "1 < uVar47 - 5" (number_literal "1") (< "<") (binary_expression "uVar47 - 5" (identifier "uVar47") (- "-") (number_literal "5"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40)))" (( "(") (parenthesized_expression "(1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))" (( "(") (binary_expression "1 < uVar47 - 0x86 && (1 < uVar47 - 0x40)" (binary_expression "1 < uVar47 - 0x86" (number_literal "1") (< "<") (binary_expression "uVar47 - 0x86" (identifier "uVar47") (- "-") (number_literal "0x86"))) (&& "&&") (parenthesized_expression "(1 < uVar47 - 0x40)" (( "(") (binary_expression "1 < uVar47 - 0x40" (number_literal "1") (< "<") (binary_expression "uVar47 - 0x40" (identifier "uVar47") (- "-") (number_literal "0x40"))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n        uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n      }" ({ "{") (expression_statement "uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        );" (assignment_expression "uVar21 = gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        )" (identifier "uVar21") (= "=") (call_expression "gettext(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        )" (identifier "gettext") (argument_list "(\n                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."\n                        )" (( "(") (string_literal ""relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."" (" """) (string_content "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations.") (" """)) () ")")))) (; ";")) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21)" (identifier "FUN_0034aed0") (argument_list "(param_2,param_6,uVar35,uVar21)" (( "(") (identifier "param_2") (, ",") (identifier "param_6") (, ",") (identifier "uVar35") (, ",") (identifier "uVar21") () ")"))) (; ";")) (} "}"))) (expression_statement "cVar12 = '\x01';" (assignment_expression "cVar12 = '\x01'" (identifier "cVar12") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (} "}")) (else_clause "else {\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }" (else "else") (compound_statement "{\n      if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }\nLAB_002c5078:\n      cVar12 = '\0';\n    }" ({ "{") (if_statement "if ((!bVar50 && !bVar51) == bVar50) {\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }" (if "if") (parenthesized_expression "((!bVar50 && !bVar51) == bVar50)" (( "(") (binary_expression "(!bVar50 && !bVar51) == bVar50" (parenthesized_expression "(!bVar50 && !bVar51)" (( "(") (binary_expression "!bVar50 && !bVar51" (unary_expression "!bVar50" (! "!") (identifier "bVar50")) (&& "&&") (unary_expression "!bVar51" (! "!") (identifier "bVar51"))) () ")")) (== "==") (identifier "bVar50")) () ")")) (compound_statement "{\nLAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        param_9 = local_d0;\n      }" ({ "{") (labeled_statement "LAB_002c51e0:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" (statement_identifier "LAB_002c51e0") (: ":") (if_statement "if (*(long *)(param_4 + 0x28) == 0) {\n          local_68 = 0;\n        }\n        else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" (if "if") (parenthesized_expression "(*(long *)(param_4 + 0x28) == 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x28) == 0" (pointer_expression "*(long *)(param_4 + 0x28)" (* "*") (cast_expression "(long *)(param_4 + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x28)" (( "(") (binary_expression "param_4 + 0x28" (identifier "param_4") (+ "+") (number_literal "0x28")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          local_68 = 0;\n        }" ({ "{") (expression_statement "local_68 = 0;" (assignment_expression "local_68 = 0" (identifier "local_68") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" (else "else") (compound_statement "{\n          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" ({ "{") (expression_statement "local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);" (assignment_expression "local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40)" (identifier "local_68") (= "=") (pointer_expression "*(uint *)(*(long *)(param_4 + 0x28) + 0x40)" (* "*") (cast_expression "(uint *)(*(long *)(param_4 + 0x28) + 0x40)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_4 + 0x28) + 0x40)" (( "(") (binary_expression "*(long *)(param_4 + 0x28) + 0x40" (pointer_expression "*(long *)(param_4 + 0x28)" (* "*") (cast_expression "(long *)(param_4 + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x28)" (( "(") (binary_expression "param_4 + 0x28" (identifier "param_4") (+ "+") (number_literal "0x28")) () ")")))) (+ "+") (number_literal "0x40")) () ")"))))) (; ";")) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" (if "if") (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" (( "(") (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" (( "(") (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (( "(") (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" (* "*") (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0xd0")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(plVar3[0x6e] != 0)" (( "(") (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" ({ "{") (expression_statement "local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c)" (identifier "local_68") (= "=") (binary_expression "local_68 + *(int *)(plVar3[0x6e] + 0x10c)" (identifier "local_68") (+ "+") (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" (* "*") (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3[0x6e] + 0x10c)" (( "(") (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]")) (+ "+") (number_literal "0x10c")) () ")")))))) (; ";")) (} "}"))) (} "}"))))) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" (identifier "param_9") (= "=") (identifier "local_d0")) (; ";")) (} "}"))) (labeled_statement "LAB_002c5078:\n      cVar12 = '\0';" (statement_identifier "LAB_002c5078") (: ":") (expression_statement "cVar12 = '\0';" (assignment_expression "cVar12 = '\0'" (identifier "cVar12") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";"))) (} "}")))) (if_statement "if (uVar47 == 100) {\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }" (if "if") (parenthesized_expression "(uVar47 == 100)" (( "(") (binary_expression "uVar47 == 100" (identifier "uVar47") (== "==") (number_literal "100")) () ")")) (compound_statement "{\n      lVar24 = param_8[0xf];\n      if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }\n      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;\n      lVar30 = lVar24;\n      if (param_8[0x10] == 0) goto LAB_002c5870;\n      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;\n      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);\n      if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }\nLAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");\n    }" ({ "{") (expression_statement "lVar24 = param_8[0xf];" (assignment_expression "lVar24 = param_8[0xf]" (identifier "lVar24") (= "=") (subscript_expression "param_8[0xf]" (identifier "param_8") ([ "[") (number_literal "0xf") (] "]"))) (; ";")) (if_statement "if (lVar24 == 0) {\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }" (if "if") (parenthesized_expression "(lVar24 == 0)" (( "(") (binary_expression "lVar24 == 0" (identifier "lVar24") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        if (param_8[0x10] == 0) goto LAB_002c4d83;\n        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;\n        goto LAB_002c5869;\n      }" ({ "{") (if_statement "if (param_8[0x10] == 0) goto LAB_002c4d83;" (if "if") (parenthesized_expression "(param_8[0x10] == 0)" (( "(") (binary_expression "param_8[0x10] == 0" (subscript_expression "param_8[0x10]" (identifier "param_8") ([ "[") (number_literal "0x10") (] "]")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c4d83;" (goto "goto") (statement_identifier "LAB_002c4d83") (; ";"))) (if_statement "if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;" (if "if") (parenthesized_expression "(*(int *)((long)param_8 + 0x24) == -1)" (( "(") (binary_expression "*(int *)((long)param_8 + 0x24) == -1" (pointer_expression "*(int *)((long)param_8 + 0x24)" (* "*") (cast_expression "(int *)((long)param_8 + 0x24)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x24)" (( "(") (binary_expression "(long)param_8 + 0x24" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x24")) () ")")))) (== "==") (number_literal "-1")) () ")")) (goto_statement "goto LAB_002c82c9;" (goto "goto") (statement_identifier "LAB_002c82c9") (; ";"))) (goto_statement "goto LAB_002c5869;" (goto "goto") (statement_identifier "LAB_002c5869") (; ";")) (} "}"))) (if_statement "if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;" (if "if") (parenthesized_expression "((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0'))" (( "(") (binary_expression "(*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')" (parenthesized_expression "(*(int *)((long)param_8 + 0x24) == -1)" (( "(") (binary_expression "*(int *)((long)param_8 + 0x24) == -1" (pointer_expression "*(int *)((long)param_8 + 0x24)" (* "*") (cast_expression "(int *)((long)param_8 + 0x24)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x24)" (( "(") (binary_expression "(long)param_8 + 0x24" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x24")) () ")")))) (== "==") (number_literal "-1")) () ")")) (&& "&&") (parenthesized_expression "((char)puVar44 != '\0')" (( "(") (binary_expression "(char)puVar44 != '\0'" (cast_expression "(char)puVar44" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "puVar44")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (goto_statement "goto LAB_002c4d83;" (goto "goto") (statement_identifier "LAB_002c4d83") (; ";"))) (expression_statement "lVar30 = lVar24;" (assignment_expression "lVar30 = lVar24" (identifier "lVar30") (= "=") (identifier "lVar24")) (; ";")) (if_statement "if (param_8[0x10] == 0) goto LAB_002c5870;" (if "if") (parenthesized_expression "(param_8[0x10] == 0)" (( "(") (binary_expression "param_8[0x10] == 0" (subscript_expression "param_8[0x10]" (identifier "param_8") ([ "[") (number_literal "0x10") (] "]")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c5870;" (goto "goto") (statement_identifier "LAB_002c5870") (; ";"))) (if_statement "if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;" (if "if") (parenthesized_expression "(*(uint *)(plVar3 + 7) < 2)" (( "(") (binary_expression "*(uint *)(plVar3 + 7) < 2" (pointer_expression "*(uint *)(plVar3 + 7)" (* "*") (cast_expression "(uint *)(plVar3 + 7)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3 + 7)" (( "(") (binary_expression "plVar3 + 7" (identifier "plVar3") (+ "+") (number_literal "7")) () ")")))) (< "<") (number_literal "2")) () ")")) (goto_statement "goto LAB_002c5870;" (goto "goto") (statement_identifier "LAB_002c5870") (; ";"))) (expression_statement "uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a);" (assignment_expression "uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a)" (identifier "uVar34") (= "=") (binary_expression "((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -\n               (ulong)*(uint *)(plVar3 + 0x7a)" (parenthesized_expression "((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8)" (( "(") (binary_expression "(ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8" (binary_expression "(ulong)*(uint *)(plVar3 + 0x7c)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (cast_expression "(uint *)(plVar3 + 0x7c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3 + 0x7c)" (( "(") (binary_expression "plVar3 + 0x7c" (identifier "plVar3") (+ "+") (number_literal "0x7c")) () ")")))) (+ "+") (binary_expression "(plVar3[0x7b] - plVar3[0x79]) * 8" (parenthesized_expression "(plVar3[0x7b] - plVar3[0x79])" (( "(") (binary_expression "plVar3[0x7b] - plVar3[0x79]" (subscript_expression "plVar3[0x7b]" (identifier "plVar3") ([ "[") (number_literal "0x7b") (] "]")) (- "-") (subscript_expression "plVar3[0x79]" (identifier "plVar3") ([ "[") (number_literal "0x79") (] "]"))) () ")")) (* "*") (number_literal "8"))) () ")")) (- "-") (binary_expression "(ulong)*(uint *)(plVar3 + 0x7a)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (cast_expression "(uint *)(plVar3 + 0x7a)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3 + 0x7a)" (( "(") (binary_expression "plVar3 + 0x7a" (identifier "plVar3") (+ "+") (number_literal "0x7a")) () ")")))))) (; ";")) (if_statement "if (1 < uVar34) {\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }" (if "if") (parenthesized_expression "(1 < uVar34)" (( "(") (binary_expression "1 < uVar34" (number_literal "1") (< "<") (identifier "uVar34")) () ")")) (compound_statement "{\n        uVar23 = 1;\n        do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);\n      }" ({ "{") (expression_statement "uVar23 = 1;" (assignment_expression "uVar23 = 1" (identifier "uVar23") (= "=") (number_literal "1")) (; ";")) (do_statement "do {\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        } while (uVar23 != uVar34);" (do "do") (compound_statement "{\n          lVar30 = param_8[0x10];\n          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;\n          lVar30 = lVar24;\n          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;\n          uVar23 = uVar23 + 1;\n        }" ({ "{") (expression_statement "lVar30 = param_8[0x10];" (assignment_expression "lVar30 = param_8[0x10]" (identifier "lVar30") (= "=") (subscript_expression "param_8[0x10]" (identifier "param_8") ([ "[") (number_literal "0x10") (] "]"))) (; ";")) (if_statement "if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)\n          goto LAB_002c5870;" (if "if") (parenthesized_expression "((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)" (( "(") (binary_expression "(*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0" (parenthesized_expression "(*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f))" (( "(") (binary_expression "*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)" (pointer_expression "*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8)" (* "*") (cast_expression "(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3[0x79] + (uVar23 >> 6) * 8)" (( "(") (binary_expression "plVar3[0x79] + (uVar23 >> 6) * 8" (subscript_expression "plVar3[0x79]" (identifier "plVar3") ([ "[") (number_literal "0x79") (] "]")) (+ "+") (binary_expression "(uVar23 >> 6) * 8" (parenthesized_expression "(uVar23 >> 6)" (( "(") (binary_expression "uVar23 >> 6" (identifier "uVar23") (>> ">>") (number_literal "6")) () ")")) (* "*") (number_literal "8"))) () ")")))) (& "&") (binary_expression "1L << ((byte)uVar23 & 0x3f)" (number_literal "1L") (<< "<<") (parenthesized_expression "((byte)uVar23 & 0x3f)" (( "(") (binary_expression "(byte)uVar23 & 0x3f" (cast_expression "(byte)uVar23" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar23")) (& "&") (number_literal "0x3f")) () ")")))) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c5870;" (goto "goto") (statement_identifier "LAB_002c5870") (; ";"))) (expression_statement "lVar30 = lVar24;" (assignment_expression "lVar30 = lVar24" (identifier "lVar30") (= "=") (identifier "lVar24")) (; ";")) (if_statement "if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;" (if "if") (parenthesized_expression "(uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1)" (( "(") (binary_expression "uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1" (identifier "uVar23") (== "==") (binary_expression "(ulong)(*(uint *)(plVar3 + 7) - 2) + 1" (call_expression "(ulong)(*(uint *)(plVar3 + 7) - 2)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(*(uint *)(plVar3 + 7) - 2)" (( "(") (binary_expression "*(uint *)(plVar3 + 7) - 2" (pointer_expression "*(uint *)(plVar3 + 7)" (* "*") (cast_expression "(uint *)(plVar3 + 7)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3 + 7)" (( "(") (binary_expression "plVar3 + 7" (identifier "plVar3") (+ "+") (number_literal "7")) () ")")))) (- "-") (number_literal "2")) () ")"))) (+ "+") (number_literal "1"))) () ")")) (goto_statement "goto LAB_002c5870;" (goto "goto") (statement_identifier "LAB_002c5870") (; ";"))) (expression_statement "uVar23 = uVar23 + 1;" (assignment_expression "uVar23 = uVar23 + 1" (identifier "uVar23") (= "=") (binary_expression "uVar23 + 1" (identifier "uVar23") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar23 != uVar34)" (( "(") (binary_expression "uVar23 != uVar34" (identifier "uVar23") (!= "!=") (identifier "uVar34")) () ")")) (; ";")) (} "}"))) (labeled_statement "LAB_002c81a7:\n                    \n      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");" (statement_identifier "LAB_002c81a7") (: ":") (expression_statement "FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x723") (, ",") (string_literal ""is_mips16_call_fp_stub_section"" (" """) (string_content "is_mips16_call_fp_stub_section") (" """)) () ")"))) (; ";"))) (} "}"))) (if_statement "if (param_8[0xe] != 0) {\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }" (if "if") (parenthesized_expression "(param_8[0xe] != 0)" (( "(") (binary_expression "param_8[0xe] != 0" (subscript_expression "param_8[0xe]" (identifier "param_8") ([ "[") (number_literal "0xe") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }\n      goto LAB_002c509e;\n    }" ({ "{") (if_statement "if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }" (if "if") (parenthesized_expression "((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0'))" (( "(") (binary_expression "(uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')" (parenthesized_expression "(uVar47 == 0x67)" (( "(") (binary_expression "uVar47 == 0x67" (identifier "uVar47") (== "==") (number_literal "0x67")) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(param_8 + 9) == '\0')" (( "(") (binary_expression "*(char *)(param_8 + 9) == '\0'" (pointer_expression "*(char *)(param_8 + 9)" (* "*") (cast_expression "(char *)(param_8 + 9)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 9)" (( "(") (binary_expression "param_8 + 9" (identifier "param_8") (+ "+") (number_literal "9")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n        if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }\n        goto LAB_002c5256;\n      }" ({ "{") (if_statement "if (*(int *)((long)param_8 + 0x4c) == -1) {\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }" (if "if") (parenthesized_expression "(*(int *)((long)param_8 + 0x4c) == -1)" (( "(") (binary_expression "*(int *)((long)param_8 + 0x4c) == -1" (pointer_expression "*(int *)((long)param_8 + 0x4c)" (* "*") (cast_expression "(int *)((long)param_8 + 0x4c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x4c)" (( "(") (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x4c")) () ")")))) (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n          bVar48 = false;\n          goto LAB_002c4e31;\n        }" ({ "{") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (goto_statement "goto LAB_002c4e31;" (goto "goto") (statement_identifier "LAB_002c4e31") (; ";")) (} "}"))) (goto_statement "goto LAB_002c5256;" (goto "goto") (statement_identifier "LAB_002c5256") (; ";")) (} "}"))) (goto_statement "goto LAB_002c509e;" (goto "goto") (statement_identifier "LAB_002c509e") (; ";")) (} "}"))) (} "}")))) (if_statement "if (*(int *)((long)param_8 + 0x4c) == -1) {\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }" (if "if") (parenthesized_expression "(*(int *)((long)param_8 + 0x4c) == -1)" (( "(") (binary_expression "*(int *)((long)param_8 + 0x4c) == -1" (pointer_expression "*(int *)((long)param_8 + 0x4c)" (* "*") (cast_expression "(int *)((long)param_8 + 0x4c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x4c)" (( "(") (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x4c")) () ")")))) (== "==") (number_literal "-1")) () ")")) (compound_statement "{\nLAB_002c52f0:\n    bVar48 = uVar47 == 100;\n    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;\n    bVar48 = false;\n    bVar49 = false;\n    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;\n    goto LAB_002c5320;\n  }" ({ "{") (labeled_statement "LAB_002c52f0:\n    bVar48 = uVar47 == 100;" (statement_identifier "LAB_002c52f0") (: ":") (expression_statement "bVar48 = uVar47 == 100;" (assignment_expression "bVar48 = uVar47 == 100" (identifier "bVar48") (= "=") (binary_expression "uVar47 == 100" (identifier "uVar47") (== "==") (number_literal "100"))) (; ";"))) (if_statement "if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;" (if "if") (parenthesized_expression "(uVar47 == 0x85 || bVar48)" (( "(") (binary_expression "uVar47 == 0x85 || bVar48" (binary_expression "uVar47 == 0x85" (identifier "uVar47") (== "==") (number_literal "0x85")) (|| "||") (identifier "bVar48")) () ")")) (goto_statement "goto LAB_002c4d98;" (goto "goto") (statement_identifier "LAB_002c4d98") (; ";"))) (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (expression_statement "bVar49 = false;" (assignment_expression "bVar49 = false" (identifier "bVar49") (= "=") (false "false")) (; ";")) (if_statement "if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;" (if "if") (parenthesized_expression "((uVar36 & 0xf7) != 0x85)" (( "(") (binary_expression "(uVar36 & 0xf7) != 0x85" (parenthesized_expression "(uVar36 & 0xf7)" (( "(") (binary_expression "uVar36 & 0xf7" (identifier "uVar36") (& "&") (number_literal "0xf7")) () ")")) (!= "!=") (number_literal "0x85")) () ")")) (goto_statement "goto LAB_002c4e43;" (goto "goto") (statement_identifier "LAB_002c4e43") (; ";"))) (goto_statement "goto LAB_002c5320;" (goto "goto") (statement_identifier "LAB_002c5320") (; ";")) (} "}"))) (labeled_statement "LAB_002c5256:\n  local_d0 = (uint *)&local_78;" (statement_identifier "LAB_002c5256") (: ":") (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" (identifier "local_d0") (= "=") (cast_expression "(uint *)&local_78" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_78" (& "&") (identifier "local_78")))) (; ";"))) (expression_statement "uVar36 = (uint)uVar34;" (assignment_expression "uVar36 = (uint)uVar34" (identifier "uVar36") (= "=") (cast_expression "(uint)uVar34" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar34"))) (; ";")) (if_statement "if (((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')) {\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }" (if "if") (parenthesized_expression "(((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0'))" (( "(") (binary_expression "((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&\n     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')" (parenthesized_expression "((*(byte *)((long)plVar3 + 0x36c) & 1) == 0)" (( "(") (binary_expression "(*(byte *)((long)plVar3 + 0x36c) & 1) == 0" (parenthesized_expression "(*(byte *)((long)plVar3 + 0x36c) & 1)" (( "(") (binary_expression "*(byte *)((long)plVar3 + 0x36c) & 1" (pointer_expression "*(byte *)((long)plVar3 + 0x36c)" (* "*") (cast_expression "(byte *)((long)plVar3 + 0x36c)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)plVar3 + 0x36c)" (( "(") (binary_expression "(long)plVar3 + 0x36c" (cast_expression "(long)plVar3" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "plVar3")) (+ "+") (number_literal "0x36c")) () ")")))) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')" (( "(") (comma_expression "cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0'" (assignment_expression "cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff)" (identifier "cVar13") (= "=") (call_expression "FUN_00290610(uVar47,(ulong)puVar44 & 0xff)" (identifier "FUN_00290610") (argument_list "(uVar47,(ulong)puVar44 & 0xff)" (( "(") (identifier "uVar47") (, ",") (binary_expression "(ulong)puVar44 & 0xff" (cast_expression "(ulong)puVar44" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "puVar44")) (& "&") (number_literal "0xff")) () ")")))) (, ",") (binary_expression "cVar13 != '\0'" (identifier "cVar13") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) () ")"))) () ")")) (compound_statement "{\n    lVar30 = *(long *)(param_4 + 0x98);\n    if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }\n    FUN_00290a30();\n    goto LAB_002c8217;\n  }" ({ "{") (expression_statement "lVar30 = *(long *)(param_4 + 0x98);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x98)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x98)" (* "*") (cast_expression "(long *)(param_4 + 0x98)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x98)" (( "(") (binary_expression "param_4 + 0x98" (identifier "param_4") (+ "+") (number_literal "0x98")) () ")"))))) (; ";")) (if_statement "if (lVar30 != 0) {\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }\n      local_98._0_1_ = (byte)uVar17;\n      bVar48 = uVar47 == 100;\n      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);\n      bVar49 = (bool)((byte)local_98 & bVar48);\n      param_9 = local_d0;\njoined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }\nLAB_002c4e31:\n      bVar49 = bVar48;\n      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;\nLAB_002c4e43:\n      bVar49 = bVar48;\n      if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }\nLAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;\n      bVar52 = (byte)puVar44;\n      if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }\n      uVar47 = local_84;\n      bVar48 = param_3 == 9;\n      auStack_80[0] = 0;\n      auStack_80[1] = 0;\n      puVar44 = &local_84;\n      uVar16 = 0;\n      local_e8 = 0;\n      uVar17 = local_84;\nLAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;\n      bVar49 = local_b0 == uVar35;\n      bVar50 = local_c4 != 0;\n      cVar13 = bVar49 && bVar50;\n      uVar36 = (uint)(byte)cVar13;\n      uVar34 = (ulong)uVar36;\n      if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }\n      local_c8 = (uint)*param_1;\n      *(char *)((long)param_1 + 4) = cVar13;\n      local_c0 = local_c8;\n      switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }\nLAB_002c5940:\n      puVar44 = puVar44 + 1;\n      if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }\n      uVar17 = *puVar44;\n      goto LAB_002c4f1d;\n    }" ({ "{") (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {\n                    \n        FUN_00291e90();\n      }" (if "if") (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) == 0)" (( "(") (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) == 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" (( "(") (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" (* "*") (cast_expression "(byte *)(lVar30 + 0x20)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x20)" (( "(") (binary_expression "lVar30 + 0x20" (identifier "lVar30") (+ "+") (number_literal "0x20")) () ")")))) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n        FUN_00291e90();\n      }" ({ "{") (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" (identifier "FUN_00291e90") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "local_98._0_1_ = (byte)uVar17;" (assignment_expression "local_98._0_1_ = (byte)uVar17" (field_expression "local_98._0_1_" (identifier "local_98") (. ".") (field_identifier "_0_1_")) (= "=") (cast_expression "(byte)uVar17" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar17"))) (; ";")) (expression_statement "bVar48 = uVar47 == 100;" (assignment_expression "bVar48 = uVar47 == 100" (identifier "bVar48") (= "=") (binary_expression "uVar47 == 100" (identifier "uVar47") (== "==") (number_literal "100"))) (; ";")) (expression_statement "local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);" (assignment_expression "local_68 = extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20)" (identifier "local_68") (= "=") (binary_expression "extraout_EDX + *(int *)(lVar30 + 8) +\n                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20)" (binary_expression "extraout_EDX + *(int *)(lVar30 + 8)" (identifier "extraout_EDX") (+ "+") (pointer_expression "*(int *)(lVar30 + 8)" (* "*") (cast_expression "(int *)(lVar30 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 8)" (( "(") (binary_expression "lVar30 + 8" (identifier "lVar30") (+ "+") (number_literal "8")) () ")"))))) (+ "+") (call_expression "(uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20)" (( "(") (binary_expression "(*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20" (parenthesized_expression "(*(byte *)((long)param_8 + 0x39) >> 2 & 0x30)" (( "(") (binary_expression "*(byte *)((long)param_8 + 0x39) >> 2 & 0x30" (binary_expression "*(byte *)((long)param_8 + 0x39) >> 2" (pointer_expression "*(byte *)((long)param_8 + 0x39)" (* "*") (cast_expression "(byte *)((long)param_8 + 0x39)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x39)" (( "(") (binary_expression "(long)param_8 + 0x39" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x39")) () ")")))) (>> ">>") (number_literal "2")) (& "&") (number_literal "0x30")) () ")")) (== "==") (number_literal "0x20")) () ")"))))) (; ";")) (expression_statement "bVar49 = (bool)((byte)local_98 & bVar48);" (assignment_expression "bVar49 = (bool)((byte)local_98 & bVar48)" (identifier "bVar49") (= "=") (cast_expression "(bool)((byte)local_98 & bVar48)" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (parenthesized_expression "((byte)local_98 & bVar48)" (( "(") (binary_expression "(byte)local_98 & bVar48" (cast_expression "(byte)local_98" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_98")) (& "&") (identifier "bVar48")) () ")")))) (; ";")) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" (identifier "param_9") (= "=") (identifier "local_d0")) (; ";")) (labeled_statement "joined_r0x002c52d3:\n      if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }" (statement_identifier "joined_r0x002c52d3") (: ":") (if_statement "if (bVar49 != false) {\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }" (if "if") (parenthesized_expression "(bVar49 != false)" (( "(") (binary_expression "bVar49 != false" (identifier "bVar49") (!= "!=") (false "false")) () ")")) (compound_statement "{\n        uVar17 = (uint)bVar49;\n        goto LAB_002c532c;\n      }" ({ "{") (expression_statement "uVar17 = (uint)bVar49;" (assignment_expression "uVar17 = (uint)bVar49" (identifier "uVar17") (= "=") (cast_expression "(uint)bVar49" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar49"))) (; ";")) (goto_statement "goto LAB_002c532c;" (goto "goto") (statement_identifier "LAB_002c532c") (; ";")) (} "}")))) (labeled_statement "LAB_002c4e31:\n      bVar49 = bVar48;" (statement_identifier "LAB_002c4e31") (: ":") (expression_statement "bVar49 = bVar48;" (assignment_expression "bVar49 = bVar48" (identifier "bVar49") (= "=") (identifier "bVar48")) (; ";"))) (if_statement "if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;" (if "if") (parenthesized_expression "((uVar36 & 0xf7) == 0x85)" (( "(") (binary_expression "(uVar36 & 0xf7) == 0x85" (parenthesized_expression "(uVar36 & 0xf7)" (( "(") (binary_expression "uVar36 & 0xf7" (identifier "uVar36") (& "&") (number_literal "0xf7")) () ")")) (== "==") (number_literal "0x85")) () ")")) (goto_statement "goto LAB_002c5320;" (goto "goto") (statement_identifier "LAB_002c5320") (; ";"))) (labeled_statement "LAB_002c4e43:\n      bVar49 = bVar48;" (statement_identifier "LAB_002c4e43") (: ":") (expression_statement "bVar49 = bVar48;" (assignment_expression "bVar49 = bVar48" (identifier "bVar49") (= "=") (identifier "bVar48")) (; ";"))) (if_statement "if (uVar47 - 0x8b < 2) {\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }" (if "if") (parenthesized_expression "(uVar47 - 0x8b < 2)" (( "(") (binary_expression "uVar47 - 0x8b < 2" (binary_expression "uVar47 - 0x8b" (identifier "uVar47") (- "-") (number_literal "0x8b")) (< "<") (number_literal "2")) () ")")) (compound_statement "{\nLAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }\n      }" ({ "{") (labeled_statement "LAB_002c5320:\n        if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }" (statement_identifier "LAB_002c5320") (: ":") (if_statement "if ((char)puVar44 != '\0') {\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }" (if "if") (parenthesized_expression "((char)puVar44 != '\0')" (( "(") (binary_expression "(char)puVar44 != '\0'" (cast_expression "(char)puVar44" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "puVar44")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");\n          FUN_0034a750(uVar21);\n        }" ({ "{") (labeled_statement "LAB_002c532c:\n          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");" (statement_identifier "LAB_002c532c") (: ":") (expression_statement "uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");" (assignment_expression "uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other")" (identifier "uVar21") (= "=") (call_expression "gettext("MIPS16 and microMIPS functions cannot call each other")" (identifier "gettext") (argument_list "("MIPS16 and microMIPS functions cannot call each other")" (( "(") (string_literal ""MIPS16 and microMIPS functions cannot call each other"" (" """) (string_content "MIPS16 and microMIPS functions cannot call each other") (" """)) () ")")))) (; ";"))) (expression_statement "FUN_0034a750(uVar21);" (call_expression "FUN_0034a750(uVar21)" (identifier "FUN_0034a750") (argument_list "(uVar21)" (( "(") (identifier "uVar21") () ")"))) (; ";")) (} "}")))) (} "}"))) (labeled_statement "LAB_002c4e56:\n      local_98._0_1_ = (byte)uVar17;" (statement_identifier "LAB_002c4e56") (: ":") (expression_statement "local_98._0_1_ = (byte)uVar17;" (assignment_expression "local_98._0_1_ = (byte)uVar17" (field_expression "local_98._0_1_" (identifier "local_98") (. ".") (field_identifier "_0_1_")) (= "=") (cast_expression "(byte)uVar17" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar17"))) (; ";"))) (expression_statement "bVar52 = (byte)puVar44;" (assignment_expression "bVar52 = (byte)puVar44" (identifier "bVar52") (= "=") (cast_expression "(byte)puVar44" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "puVar44"))) (; ";")) (if_statement "if (param_8 == (undefined8 *)0x0) {\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }\n      else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }" (if "if") (parenthesized_expression "(param_8 == (undefined8 *)0x0)" (( "(") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        local_e3 = (bVar52 ^ 1) & bVar49;\n        local_e2 = local_e3;\n        if (local_e3 != 0) goto LAB_002c4e81;\n        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;\n        if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }\n        local_84 = 0x85;\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_f4 = 0x21;\n        local_e2 = local_e3;\nLAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }\n      }" ({ "{") (expression_statement "local_e3 = (bVar52 ^ 1) & bVar49;" (assignment_expression "local_e3 = (bVar52 ^ 1) & bVar49" (identifier "local_e3") (= "=") (binary_expression "(bVar52 ^ 1) & bVar49" (parenthesized_expression "(bVar52 ^ 1)" (( "(") (binary_expression "bVar52 ^ 1" (identifier "bVar52") (^ "^") (number_literal "1")) () ")")) (& "&") (identifier "bVar49"))) (; ";")) (expression_statement "local_e2 = local_e3;" (assignment_expression "local_e2 = local_e3" (identifier "local_e2") (= "=") (identifier "local_e3")) (; ";")) (if_statement "if (local_e3 != 0) goto LAB_002c4e81;" (if "if") (parenthesized_expression "(local_e3 != 0)" (( "(") (binary_expression "local_e3 != 0" (identifier "local_e3") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c4e81;" (goto "goto") (statement_identifier "LAB_002c4e81") (; ";"))) (expression_statement "local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;" (assignment_expression "local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85" (identifier "local_e3") (= "=") (binary_expression "((byte)local_98 ^ 1) & uVar47 == 0x85" (parenthesized_expression "((byte)local_98 ^ 1)" (( "(") (binary_expression "(byte)local_98 ^ 1" (cast_expression "(byte)local_98" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_98")) (^ "^") (number_literal "1")) () ")")) (& "&") (binary_expression "uVar47 == 0x85" (identifier "uVar47") (== "==") (number_literal "0x85")))) (; ";")) (if_statement "if (local_e3 == 0) {\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }" (if "if") (parenthesized_expression "(local_e3 == 0)" (( "(") (binary_expression "local_e3 == 0" (identifier "local_e3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;\n          if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }\n          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;\n          local_e2 = 1;\n          goto LAB_002c4e81;\n        }" ({ "{") (labeled_statement "LAB_002c5694:\n          local_e3 = (byte)local_98 | bVar52;" (statement_identifier "LAB_002c5694") (: ":") (expression_statement "local_e3 = (byte)local_98 | bVar52;" (assignment_expression "local_e3 = (byte)local_98 | bVar52" (identifier "local_e3") (= "=") (binary_expression "(byte)local_98 | bVar52" (cast_expression "(byte)local_98" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_98")) (| "|") (identifier "bVar52"))) (; ";"))) (if_statement "if (uVar47 != 4 && uVar47 != 0x25) {\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }" (if "if") (parenthesized_expression "(uVar47 != 4 && uVar47 != 0x25)" (( "(") (binary_expression "uVar47 != 4 && uVar47 != 0x25" (binary_expression "uVar47 != 4" (identifier "uVar47") (!= "!=") (number_literal "4")) (&& "&&") (binary_expression "uVar47 != 0x25" (identifier "uVar47") (!= "!=") (number_literal "0x25"))) () ")")) (compound_statement "{\n            local_e3 = uVar47 == 4 || uVar47 == 0x25;\n          }" ({ "{") (expression_statement "local_e3 = uVar47 == 4 || uVar47 == 0x25;" (assignment_expression "local_e3 = uVar47 == 4 || uVar47 == 0x25" (identifier "local_e3") (= "=") (binary_expression "uVar47 == 4 || uVar47 == 0x25" (binary_expression "uVar47 == 4" (identifier "uVar47") (== "==") (number_literal "4")) (|| "||") (binary_expression "uVar47 == 0x25" (identifier "uVar47") (== "==") (number_literal "0x25")))) (; ";")) (} "}"))) (if_statement "if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;" (if "if") (parenthesized_expression "(param_8 != (undefined8 *)0x0)" (( "(") (binary_expression "param_8 != (undefined8 *)0x0" (identifier "param_8") (!= "!=") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_002c5175;" (goto "goto") (statement_identifier "LAB_002c5175") (; ";"))) (expression_statement "local_e2 = 1;" (assignment_expression "local_e2 = 1" (identifier "local_e2") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_002c4e81;" (goto "goto") (statement_identifier "LAB_002c4e81") (; ";")) (} "}"))) (expression_statement "local_84 = 0x85;" (assignment_expression "local_84 = 0x85" (identifier "local_84") (= "=") (number_literal "0x85")) (; ";")) (expression_statement "auStack_80[0] = 0;" (assignment_expression "auStack_80[0] = 0" (subscript_expression "auStack_80[0]" (identifier "auStack_80") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "auStack_80[1] = 0;" (assignment_expression "auStack_80[1] = 0" (subscript_expression "auStack_80[1]" (identifier "auStack_80") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "local_f4 = 0x21;" (assignment_expression "local_f4 = 0x21" (identifier "local_f4") (= "=") (number_literal "0x21")) (; ";")) (expression_statement "local_e2 = local_e3;" (assignment_expression "local_e2 = local_e3" (identifier "local_e2") (= "=") (identifier "local_e3")) (; ";")) (labeled_statement "LAB_002c581a:\n        if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }" (statement_identifier "LAB_002c581a") (: ":") (if_statement "if (1 < local_84 - 0x8b) {\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }" (if "if") (parenthesized_expression "(1 < local_84 - 0x8b)" (( "(") (binary_expression "1 < local_84 - 0x8b" (number_literal "1") (< "<") (binary_expression "local_84 - 0x8b" (identifier "local_84") (- "-") (number_literal "0x8b"))) () ")")) (compound_statement "{\n          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\nLAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;\nLAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        }" ({ "{") (expression_statement "uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);" (assignment_expression "uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8)" (identifier "uVar17") (= "=") (call_expression "(uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8)" (call_expression "(uint)(ushort)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(ushort)" (( "(") (identifier "ushort") () ")"))) (argument_list "((ushort)*param_10 << 8 | (ushort)*param_10 >> 8)" (( "(") (binary_expression "(ushort)*param_10 << 8 | (ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10 << 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" (( "(") (identifier "ushort") () ")")) (* "*") (identifier "param_10")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "(ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" (( "(") (identifier "ushort") () ")")) (* "*") (identifier "param_10")) (>> ">>") (number_literal "8"))) () ")")))) (; ";")) (expression_statement "uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;" (assignment_expression "uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8" (identifier "uVar29") (= "=") (binary_expression "*(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8" (binary_expression "*(ushort *)((long)param_10 + 2) << 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" (* "*") (cast_expression "(ushort *)((long)param_10 + 2)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_10 + 2)" (( "(") (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_10")) (+ "+") (number_literal "2")) () ")")))) (<< "<<") (number_literal "8")) (| "|") (binary_expression "*(ushort *)((long)param_10 + 2) >> 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" (* "*") (cast_expression "(ushort *)((long)param_10 + 2)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_10 + 2)" (( "(") (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_10")) (+ "+") (number_literal "2")) () ")")))) (>> ">>") (number_literal "8")))) (; ";")) (labeled_statement "LAB_002c4ee9:\n          uVar17 = uVar17 << 0x10 | (uint)uVar29;" (statement_identifier "LAB_002c4ee9") (: ":") (expression_statement "uVar17 = uVar17 << 0x10 | (uint)uVar29;" (assignment_expression "uVar17 = uVar17 << 0x10 | (uint)uVar29" (identifier "uVar17") (= "=") (binary_expression "uVar17 << 0x10 | (uint)uVar29" (binary_expression "uVar17 << 0x10" (identifier "uVar17") (<< "<<") (number_literal "0x10")) (| "|") (cast_expression "(uint)uVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar29")))) (; ";"))) (labeled_statement "LAB_002c4ef1:\n          *(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;" (statement_identifier "LAB_002c4ef1") (: ":") (expression_statement "*(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;" (assignment_expression "*(uint *)param_10 =\n               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar17 << 0x18" (identifier "uVar17") (<< "<<") (number_literal "0x18")))) (; ";"))) (} "}")))) (} "}")) (else_clause "else {\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }" (else "else") (compound_statement "{\nLAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);\n        if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }\nLAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }\n                    \n        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);\n        if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;\nLAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }\n        auStack_80[0] = 0;\n        auStack_80[1] = 0;\n        local_e2 = 0;\nLAB_002c55ef:\n        local_84 = uVar47;\n        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;\n      }" ({ "{") (labeled_statement "LAB_002c5150:\n        cVar13 = FUN_002e7200(param_8);" (statement_identifier "LAB_002c5150") (: ":") (expression_statement "cVar13 = FUN_002e7200(param_8);" (assignment_expression "cVar13 = FUN_002e7200(param_8)" (identifier "cVar13") (= "=") (call_expression "FUN_002e7200(param_8)" (identifier "FUN_002e7200") (argument_list "(param_8)" (( "(") (identifier "param_8") () ")")))) (; ";"))) (if_statement "if (cVar13 == '\0') {\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }\n        else {\n          local_e3 = 0;\n        }" (if "if") (parenthesized_expression "(cVar13 == '\0')" (( "(") (binary_expression "cVar13 == '\0'" (identifier "cVar13") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          local_e3 = (bVar52 ^ 1) & bVar49;\n          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;\n        }" ({ "{") (expression_statement "local_e3 = (bVar52 ^ 1) & bVar49;" (assignment_expression "local_e3 = (bVar52 ^ 1) & bVar49" (identifier "local_e3") (= "=") (binary_expression "(bVar52 ^ 1) & bVar49" (parenthesized_expression "(bVar52 ^ 1)" (( "(") (binary_expression "bVar52 ^ 1" (identifier "bVar52") (^ "^") (number_literal "1")) () ")")) (& "&") (identifier "bVar49"))) (; ";")) (if_statement "if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))\n          goto LAB_002c5694;" (if "if") (parenthesized_expression "((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))" (( "(") (binary_expression "(local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0)" (parenthesized_expression "(local_e3 == 0)" (( "(") (binary_expression "local_e3 == 0" (identifier "local_e3") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0)" (( "(") (comma_expression "local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0" (assignment_expression "local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85" (identifier "local_e3") (= "=") (binary_expression "((byte)local_98 ^ 1) & uVar47 == 0x85" (parenthesized_expression "((byte)local_98 ^ 1)" (( "(") (binary_expression "(byte)local_98 ^ 1" (cast_expression "(byte)local_98" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_98")) (^ "^") (number_literal "1")) () ")")) (& "&") (binary_expression "uVar47 == 0x85" (identifier "uVar47") (== "==") (number_literal "0x85")))) (, ",") (binary_expression "local_e3 == 0" (identifier "local_e3") (== "==") (number_literal "0"))) () ")"))) () ")")) (goto_statement "goto LAB_002c5694;" (goto "goto") (statement_identifier "LAB_002c5694") (; ";"))) (} "}")) (else_clause "else {\n          local_e3 = 0;\n        }" (else "else") (compound_statement "{\n          local_e3 = 0;\n        }" ({ "{") (expression_statement "local_e3 = 0;" (assignment_expression "local_e3 = 0" (identifier "local_e3") (= "=") (number_literal "0")) (; ";")) (} "}")))) (labeled_statement "LAB_002c5175:\n        if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }" (statement_identifier "LAB_002c5175") (: ":") (if_statement "if (*(char *)((long)param_8 + 100) != '\0') {\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }" (if "if") (parenthesized_expression "(*(char *)((long)param_8 + 100) != '\0')" (( "(") (binary_expression "*(char *)((long)param_8 + 100) != '\0'" (pointer_expression "*(char *)((long)param_8 + 100)" (* "*") (cast_expression "(char *)((long)param_8 + 100)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 100)" (( "(") (binary_expression "(long)param_8 + 100" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "100")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;\nLAB_002c4e81:\n          local_f4 = uVar47 - 100;\n          uVar34 = (ulong)(uVar47 - 0x85);\n          auStack_80[0] = 0;\n          auStack_80[1] = 0;\n          if (0xc < local_f4) goto LAB_002c55ef;\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = (uint)uVar15;\n          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;\n          local_84 = uVar47;\n          if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }\n          if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }\nLAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);\n          goto LAB_002c4ef1;\n        }" ({ "{") (expression_statement "local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);" (assignment_expression "local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1)" (identifier "local_e2") (= "=") (call_expression "FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1)" (identifier "FUN_0028d190") (argument_list "(param_8,*(int *)(param_8 + 4) != 0,1)" (( "(") (identifier "param_8") (, ",") (binary_expression "*(int *)(param_8 + 4) != 0" (pointer_expression "*(int *)(param_8 + 4)" (* "*") (cast_expression "(int *)(param_8 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 4)" (( "(") (binary_expression "param_8 + 4" (identifier "param_8") (+ "+") (number_literal "4")) () ")")))) (!= "!=") (number_literal "0")) (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))\n          goto LAB_002c5579;" (if "if") (parenthesized_expression "((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))" (( "(") (binary_expression "(local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2)" (parenthesized_expression "(local_e2 == 0)" (( "(") (binary_expression "local_e2 == 0" (identifier "local_e2") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2)" (( "(") (comma_expression "local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2" (assignment_expression "local_e2 = uVar47 == 0x92 || uVar47 == 0x14" (identifier "local_e2") (= "=") (binary_expression "uVar47 == 0x92 || uVar47 == 0x14" (binary_expression "uVar47 == 0x92" (identifier "uVar47") (== "==") (number_literal "0x92")) (|| "||") (binary_expression "uVar47 == 0x14" (identifier "uVar47") (== "==") (number_literal "0x14")))) (, ",") (cast_expression "(bool)local_e2" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "local_e2"))) () ")"))) () ")")) (goto_statement "goto LAB_002c5579;" (goto "goto") (statement_identifier "LAB_002c5579") (; ";"))) (labeled_statement "LAB_002c4e81:\n          local_f4 = uVar47 - 100;" (statement_identifier "LAB_002c4e81") (: ":") (expression_statement "local_f4 = uVar47 - 100;" (assignment_expression "local_f4 = uVar47 - 100" (identifier "local_f4") (= "=") (binary_expression "uVar47 - 100" (identifier "uVar47") (- "-") (number_literal "100"))) (; ";"))) (expression_statement "uVar34 = (ulong)(uVar47 - 0x85);" (assignment_expression "uVar34 = (ulong)(uVar47 - 0x85)" (identifier "uVar34") (= "=") (call_expression "(ulong)(uVar47 - 0x85)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(uVar47 - 0x85)" (( "(") (binary_expression "uVar47 - 0x85" (identifier "uVar47") (- "-") (number_literal "0x85")) () ")")))) (; ";")) (expression_statement "auStack_80[0] = 0;" (assignment_expression "auStack_80[0] = 0" (subscript_expression "auStack_80[0]" (identifier "auStack_80") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "auStack_80[1] = 0;" (assignment_expression "auStack_80[1] = 0" (subscript_expression "auStack_80[1]" (identifier "auStack_80") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (if_statement "if (0xc < local_f4) goto LAB_002c55ef;" (if "if") (parenthesized_expression "(0xc < local_f4)" (( "(") (binary_expression "0xc < local_f4" (number_literal "0xc") (< "<") (identifier "local_f4")) () ")")) (goto_statement "goto LAB_002c55ef;" (goto "goto") (statement_identifier "LAB_002c55ef") (; ";"))) (expression_statement "uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;" (assignment_expression "uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8" (identifier "uVar15") (= "=") (binary_expression "(ushort)*param_10 << 8 | (ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10 << 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" (( "(") (identifier "ushort") () ")")) (* "*") (identifier "param_10")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "(ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" (( "(") (identifier "ushort") () ")")) (* "*") (identifier "param_10")) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "uVar17 = (uint)uVar15;" (assignment_expression "uVar17 = (uint)uVar15" (identifier "uVar17") (= "=") (cast_expression "(uint)uVar15" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar15"))) (; ";")) (expression_statement "uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;" (assignment_expression "uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8" (identifier "uVar29") (= "=") (binary_expression "*(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8" (binary_expression "*(ushort *)((long)param_10 + 2) << 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" (* "*") (cast_expression "(ushort *)((long)param_10 + 2)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_10 + 2)" (( "(") (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_10")) (+ "+") (number_literal "2")) () ")")))) (<< "<<") (number_literal "8")) (| "|") (binary_expression "*(ushort *)((long)param_10 + 2) >> 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" (* "*") (cast_expression "(ushort *)((long)param_10 + 2)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_10 + 2)" (( "(") (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_10")) (+ "+") (number_literal "2")) () ")")))) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "local_84 = uVar47;" (assignment_expression "local_84 = uVar47" (identifier "local_84") (= "=") (identifier "uVar47")) (; ";")) (if_statement "if (uVar47 - 0x85 < 0x29) {\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }" (if "if") (parenthesized_expression "(uVar47 - 0x85 < 0x29)" (( "(") (binary_expression "uVar47 - 0x85 < 0x29" (binary_expression "uVar47 - 0x85" (identifier "uVar47") (- "-") (number_literal "0x85")) (< "<") (number_literal "0x29")) () ")")) (compound_statement "{\n            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;\n            goto LAB_002c4ee9;\n          }" ({ "{") (if_statement "if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;" (if "if") (parenthesized_expression "((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0)" (( "(") (binary_expression "(0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0" (parenthesized_expression "(0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1)" (( "(") (binary_expression "0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> (uVar34 & 0x3f)" (number_literal "0x1b3e1fff3ffU") (>> ">>") (parenthesized_expression "(uVar34 & 0x3f)" (( "(") (binary_expression "uVar34 & 0x3f" (identifier "uVar34") (& "&") (number_literal "0x3f")) () ")"))) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c5704;" (goto "goto") (statement_identifier "LAB_002c5704") (; ";"))) (goto_statement "goto LAB_002c4ee9;" (goto "goto") (statement_identifier "LAB_002c4ee9") (; ";")) (} "}"))) (if_statement "if (uVar47 == 100) {\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }" (if "if") (parenthesized_expression "(uVar47 == 100)" (( "(") (binary_expression "uVar47 == 100" (identifier "uVar47") (== "==") (number_literal "100")) () ")")) (compound_statement "{\n            local_f4 = 0;\n            goto LAB_002c4ee9;\n          }" ({ "{") (expression_statement "local_f4 = 0;" (assignment_expression "local_f4 = 0" (identifier "local_f4") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_002c4ee9;" (goto "goto") (statement_identifier "LAB_002c4ee9") (; ";")) (} "}"))) (labeled_statement "LAB_002c5704:\n          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);" (statement_identifier "LAB_002c5704") (: ":") (expression_statement "uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);" (assignment_expression "uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb)" (identifier "uVar17") (= "=") (binary_expression "(uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |\n                   (uint)(((ulong)uVar15 & 0x1f) << 0xb)" (binary_expression "(uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb" (binary_expression "(uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |\n                   (uVar15 & 0xf800) << 0x10" (binary_expression "(uint)(uVar15 & 0x7e0) | uVar29 & 0x1f" (call_expression "(uint)(uVar15 & 0x7e0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar15 & 0x7e0)" (( "(") (binary_expression "uVar15 & 0x7e0" (identifier "uVar15") (& "&") (number_literal "0x7e0")) () ")"))) (| "|") (binary_expression "uVar29 & 0x1f" (identifier "uVar29") (& "&") (number_literal "0x1f"))) (| "|") (binary_expression "(uVar15 & 0xf800) << 0x10" (parenthesized_expression "(uVar15 & 0xf800)" (( "(") (binary_expression "uVar15 & 0xf800" (identifier "uVar15") (& "&") (number_literal "0xf800")) () ")")) (<< "<<") (number_literal "0x10"))) (| "|") (binary_expression "(uVar29 & 0xffe0) << 0xb" (parenthesized_expression "(uVar29 & 0xffe0)" (( "(") (binary_expression "uVar29 & 0xffe0" (identifier "uVar29") (& "&") (number_literal "0xffe0")) () ")")) (<< "<<") (number_literal "0xb"))) (| "|") (call_expression "(uint)(((ulong)uVar15 & 0x1f) << 0xb)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(((ulong)uVar15 & 0x1f) << 0xb)" (( "(") (binary_expression "((ulong)uVar15 & 0x1f) << 0xb" (parenthesized_expression "((ulong)uVar15 & 0x1f)" (( "(") (binary_expression "(ulong)uVar15 & 0x1f" (cast_expression "(ulong)uVar15" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar15")) (& "&") (number_literal "0x1f")) () ")")) (<< "<<") (number_literal "0xb")) () ")"))))) (; ";"))) (goto_statement "goto LAB_002c4ef1;" (goto "goto") (statement_identifier "LAB_002c4ef1") (; ";")) (} "}")))) (expression_statement "local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);" (assignment_expression "local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0)" (identifier "local_e2") (= "=") (call_expression "FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0)" (identifier "FUN_0028d190") (argument_list "(param_8,*(int *)(param_8 + 4) != 0,0)" (( "(") (identifier "param_8") (, ",") (binary_expression "*(int *)(param_8 + 4) != 0" (pointer_expression "*(int *)(param_8 + 4)" (* "*") (cast_expression "(int *)(param_8 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 4)" (( "(") (binary_expression "param_8 + 4" (identifier "param_8") (+ "+") (number_literal "4")) () ")")))) (!= "!=") (number_literal "0")) (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if ((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))\n        goto LAB_002c4e81;" (if "if") (parenthesized_expression "((local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))" (( "(") (binary_expression "(local_e2 != 0) ||\n           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92)" (parenthesized_expression "(local_e2 != 0)" (( "(") (binary_expression "local_e2 != 0" (identifier "local_e2") (!= "!=") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92)" (( "(") (comma_expression "local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92" (assignment_expression "local_e2 = uVar47 == 0x14 || uVar47 == 0x92" (identifier "local_e2") (= "=") (binary_expression "uVar47 == 0x14 || uVar47 == 0x92" (binary_expression "uVar47 == 0x14" (identifier "uVar47") (== "==") (number_literal "0x14")) (|| "||") (binary_expression "uVar47 == 0x92" (identifier "uVar47") (== "==") (number_literal "0x92")))) (, ",") (binary_expression "uVar47 != 0x14 && uVar47 != 0x92" (binary_expression "uVar47 != 0x14" (identifier "uVar47") (!= "!=") (number_literal "0x14")) (&& "&&") (binary_expression "uVar47 != 0x92" (identifier "uVar47") (!= "!=") (number_literal "0x92")))) () ")"))) () ")")) (goto_statement "goto LAB_002c4e81;" (goto "goto") (statement_identifier "LAB_002c4e81") (; ";"))) (labeled_statement "LAB_002c5579:\n        if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }" (statement_identifier "LAB_002c5579") (: ":") (if_statement "if (uVar47 - 0x85 < 0x29) {\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }\n        else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }" (if "if") (parenthesized_expression "(uVar47 - 0x85 < 0x29)" (( "(") (binary_expression "uVar47 - 0x85 < 0x29" (binary_expression "uVar47 - 0x85" (identifier "uVar47") (- "-") (number_literal "0x85")) (< "<") (number_literal "0x29")) () ")")) (compound_statement "{\n          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;\n          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);\n          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;\n          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;\n        }" ({ "{") (expression_statement "uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;" (assignment_expression "uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff" (identifier "uVar23") (= "=") (binary_expression "1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff" (binary_expression "1L << ((byte)(uVar47 - 0x85) & 0x3f)" (number_literal "1L") (<< "<<") (parenthesized_expression "((byte)(uVar47 - 0x85) & 0x3f)" (( "(") (binary_expression "(byte)(uVar47 - 0x85) & 0x3f" (call_expression "(byte)(uVar47 - 0x85)" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "(uVar47 - 0x85)" (( "(") (binary_expression "uVar47 - 0x85" (identifier "uVar47") (- "-") (number_literal "0x85")) () ")"))) (& "&") (number_literal "0x3f")) () ")"))) (& "&") (number_literal "0x1b3e1fff3ff"))) (; ";")) (expression_statement "uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);" (assignment_expression "uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc)" (identifier "uVar34") (= "=") (call_expression "(ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc)" (( "(") (binary_expression "(-(uint)(uVar23 == 0) & 0xffffff82) + 0xc" (parenthesized_expression "(-(uint)(uVar23 == 0) & 0xffffff82)" (( "(") (binary_expression "-(uint)(uVar23 == 0) & 0xffffff82" (unary_expression "-(uint)(uVar23 == 0)" (- "-") (call_expression "(uint)(uVar23 == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar23 == 0)" (( "(") (binary_expression "uVar23 == 0" (identifier "uVar23") (== "==") (number_literal "0")) () ")")))) (& "&") (number_literal "0xffffff82")) () ")")) (+ "+") (number_literal "0xc")) () ")")))) (; ";")) (expression_statement "local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;" (assignment_expression "local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d" (identifier "local_f4") (= "=") (binary_expression "(-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d" (parenthesized_expression "(-(uint)(uVar23 == 0) & 0xffffff82)" (( "(") (binary_expression "-(uint)(uVar23 == 0) & 0xffffff82" (unary_expression "-(uint)(uVar23 == 0)" (- "-") (call_expression "(uint)(uVar23 == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar23 == 0)" (( "(") (binary_expression "uVar23 == 0" (identifier "uVar23") (== "==") (number_literal "0")) () ")")))) (& "&") (number_literal "0xffffff82")) () ")")) (+ "+") (number_literal "0x2d"))) (; ";")) (expression_statement "uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;" (assignment_expression "uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91" (identifier "uVar47") (= "=") (binary_expression "(-(uint)(uVar23 == 0) & 0xffffff82) + 0x91" (parenthesized_expression "(-(uint)(uVar23 == 0) & 0xffffff82)" (( "(") (binary_expression "-(uint)(uVar23 == 0) & 0xffffff82" (unary_expression "-(uint)(uVar23 == 0)" (- "-") (call_expression "(uint)(uVar23 == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar23 == 0)" (( "(") (binary_expression "uVar23 == 0" (identifier "uVar23") (== "==") (number_literal "0")) () ")")))) (& "&") (number_literal "0xffffff82")) () ")")) (+ "+") (number_literal "0x91"))) (; ";")) (} "}")) (else_clause "else {\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }" (else "else") (compound_statement "{\n          uVar34 = 0xffffff8e;\n          uVar47 = 0x13;\n          local_f4 = 0xffffffaf;\n        }" ({ "{") (expression_statement "uVar34 = 0xffffff8e;" (assignment_expression "uVar34 = 0xffffff8e" (identifier "uVar34") (= "=") (number_literal "0xffffff8e")) (; ";")) (expression_statement "uVar47 = 0x13;" (assignment_expression "uVar47 = 0x13" (identifier "uVar47") (= "=") (number_literal "0x13")) (; ";")) (expression_statement "local_f4 = 0xffffffaf;" (assignment_expression "local_f4 = 0xffffffaf" (identifier "local_f4") (= "=") (number_literal "0xffffffaf")) (; ";")) (} "}"))))) (expression_statement "auStack_80[0] = 0;" (assignment_expression "auStack_80[0] = 0" (subscript_expression "auStack_80[0]" (identifier "auStack_80") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "auStack_80[1] = 0;" (assignment_expression "auStack_80[1] = 0" (subscript_expression "auStack_80[1]" (identifier "auStack_80") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "local_e2 = 0;" (assignment_expression "local_e2 = 0" (identifier "local_e2") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_002c55ef:\n        local_84 = uVar47;" (statement_identifier "LAB_002c55ef") (: ":") (expression_statement "local_84 = uVar47;" (assignment_expression "local_84 = uVar47" (identifier "local_84") (= "=") (identifier "uVar47")) (; ";"))) (if_statement "if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))\n        goto LAB_002c581a;" (if "if") (parenthesized_expression "(((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))" (( "(") (binary_expression "((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0)" (parenthesized_expression "((uint)uVar34 < 0x29)" (( "(") (binary_expression "(uint)uVar34 < 0x29" (cast_expression "(uint)uVar34" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar34")) (< "<") (number_literal "0x29")) () ")")) (&& "&&") (parenthesized_expression "((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0)" (( "(") (binary_expression "(0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0" (parenthesized_expression "(0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1)" (( "(") (binary_expression "0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> (uVar34 & 0x3f)" (number_literal "0x1b3e1fff3ffU") (>> ">>") (parenthesized_expression "(uVar34 & 0x3f)" (( "(") (binary_expression "uVar34 & 0x3f" (identifier "uVar34") (& "&") (number_literal "0x3f")) () ")"))) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (goto_statement "goto LAB_002c581a;" (goto "goto") (statement_identifier "LAB_002c581a") (; ";"))) (} "}")))) (expression_statement "uVar47 = local_84;" (assignment_expression "uVar47 = local_84" (identifier "uVar47") (= "=") (identifier "local_84")) (; ";")) (expression_statement "bVar48 = param_3 == 9;" (assignment_expression "bVar48 = param_3 == 9" (identifier "bVar48") (= "=") (binary_expression "param_3 == 9" (identifier "param_3") (== "==") (number_literal "9"))) (; ";")) (expression_statement "auStack_80[0] = 0;" (assignment_expression "auStack_80[0] = 0" (subscript_expression "auStack_80[0]" (identifier "auStack_80") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "auStack_80[1] = 0;" (assignment_expression "auStack_80[1] = 0" (subscript_expression "auStack_80[1]" (identifier "auStack_80") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar44 = &local_84;" (assignment_expression "puVar44 = &local_84" (identifier "puVar44") (= "=") (pointer_expression "&local_84" (& "&") (identifier "local_84"))) (; ";")) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_e8 = 0;" (assignment_expression "local_e8 = 0" (identifier "local_e8") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar17 = local_84;" (assignment_expression "uVar17 = local_84" (identifier "uVar17") (= "=") (identifier "local_84")) (; ";")) (labeled_statement "LAB_002c4f1d:\n      if (uVar17 == 0) goto LAB_002c5380;" (statement_identifier "LAB_002c4f1d") (: ":") (if_statement "if (uVar17 == 0) goto LAB_002c5380;" (if "if") (parenthesized_expression "(uVar17 == 0)" (( "(") (binary_expression "uVar17 == 0" (identifier "uVar17") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c5380;" (goto "goto") (statement_identifier "LAB_002c5380") (; ";")))) (expression_statement "bVar49 = local_b0 == uVar35;" (assignment_expression "bVar49 = local_b0 == uVar35" (identifier "bVar49") (= "=") (binary_expression "local_b0 == uVar35" (identifier "local_b0") (== "==") (identifier "uVar35"))) (; ";")) (expression_statement "bVar50 = local_c4 != 0;" (assignment_expression "bVar50 = local_c4 != 0" (identifier "bVar50") (= "=") (binary_expression "local_c4 != 0" (identifier "local_c4") (!= "!=") (number_literal "0"))) (; ";")) (expression_statement "cVar13 = bVar49 && bVar50;" (assignment_expression "cVar13 = bVar49 && bVar50" (identifier "cVar13") (= "=") (binary_expression "bVar49 && bVar50" (identifier "bVar49") (&& "&&") (identifier "bVar50"))) (; ";")) (expression_statement "uVar36 = (uint)(byte)cVar13;" (assignment_expression "uVar36 = (uint)(byte)cVar13" (identifier "uVar36") (= "=") (cast_expression "(uint)(byte)cVar13" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(byte)cVar13" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "cVar13")))) (; ";")) (expression_statement "uVar34 = (ulong)uVar36;" (assignment_expression "uVar34 = (ulong)uVar36" (identifier "uVar34") (= "=") (cast_expression "(ulong)uVar36" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar36"))) (; ";")) (if_statement "if (*(char *)((long)param_1 + 4) == '\0') {\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }" (if "if") (parenthesized_expression "(*(char *)((long)param_1 + 4) == '\0')" (( "(") (binary_expression "*(char *)((long)param_1 + 4) == '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" (* "*") (cast_expression "(char *)((long)param_1 + 4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_1 + 4)" (( "(") (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_1")) (+ "+") (number_literal "4")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        *(char *)((long)param_1 + 4) = cVar13;\n        switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }\n      }" ({ "{") (expression_statement "*(char *)((long)param_1 + 4) = cVar13;" (assignment_expression "*(char *)((long)param_1 + 4) = cVar13" (pointer_expression "*(char *)((long)param_1 + 4)" (* "*") (cast_expression "(char *)((long)param_1 + 4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_1 + 4)" (( "(") (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_1")) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "cVar13")) (; ";")) (switch_statement "switch(uVar17) {\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }" (switch "switch") (parenthesized_expression "(uVar17)" (( "(") (identifier "uVar17") () ")")) (compound_statement "{\n        default:\n          goto switchD_002c5379_caseD_0;\n        case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;\n        case 2:\n          goto switchD_002c5379_caseD_2;\n        case 3:\n          goto switchD_002c4f87_caseD_3;\n        case 4:\n        case 100:\n        case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;\n        case 5:\n        case 0x68:\n        case 0x86:\n          goto switchD_002c5379_caseD_5;\n        case 6:\n        case 0x69:\n        case 0x87:\n        case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;\n        case 7:\n        case 8:\n        case 0x65:\n        case 0x88:\n        case 0x89:\n        case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;\n        case 9:\n        case 0x66:\n        case 0x8a:\n          goto switchD_002c5379_caseD_9;\n        case 10:\n          goto LAB_002c6a55;\n        case 0xb:\n        case 0x67:\n        case 0x8e:\n          goto switchD_002c5379_caseD_b;\n        case 0xc:\n          goto switchD_002c5379_caseD_c;\n        case 0x12:\n          goto switchD_002c5379_caseD_12;\n        case 0x13:\n        case 0x91:\n        case 0xf9:\n          goto switchD_002c5379_caseD_13;\n        case 0x14:\n        case 0x92:\n          goto switchD_002c5379_caseD_14;\n        case 0x15:\n        case 0x93:\n          goto switchD_002c5379_caseD_15;\n        case 0x16:\n        case 0x1e:\n        case 0x94:\n        case 0x99:\n          goto switchD_002c5379_caseD_16;\n        case 0x17:\n        case 0x1f:\n        case 0x95:\n        case 0x9a:\n          goto switchD_002c5379_caseD_17;\n        case 0x18:\n        case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;\n        case 0x1c:\n        case 0x97:\n          goto LAB_002c59bd;\n        case 0x1d:\n        case 0x98:\n          goto LAB_002c6b55;\n        case 0x25:\n        case 0x9c:\n          goto switchD_002c5379_caseD_25;\n        case 0x27:\n        case 0x29:\n          goto switchD_002c5379_caseD_27;\n        case 0x2a:\n        case 0x6a:\n        case 0xa2:\n          goto switchD_002c5379_caseD_2a;\n        case 0x2b:\n        case 0x6b:\n        case 0xa3:\n          goto switchD_002c5379_caseD_2b;\n        case 0x2c:\n        case 0x6c:\n        case 0xa4:\n          goto switchD_002c5379_caseD_2c;\n        case 0x2d:\n        case 0x6d:\n        case 0xa5:\n          goto switchD_002c5379_caseD_2d;\n        case 0x2e:\n        case 0x6e:\n        case 0xa6:\n          goto switchD_002c5379_caseD_2e;\n        case 0x2f:\n        case 0x30:\n          goto switchD_002c5379_caseD_2f;\n        case 0x31:\n        case 0x6f:\n        case 0xa9:\n          goto switchD_002c5379_caseD_31;\n        case 0x32:\n        case 0x70:\n        case 0xaa:\n          goto switchD_002c5379_caseD_32;\n        case 0x3c:\n          goto LAB_002c6f06;\n        case 0x3d:\n          goto LAB_002c6fd2;\n        case 0x3e:\n          goto LAB_002c6d53;\n        case 0x3f:\n          goto LAB_002c6e24;\n        case 0x40:\n          goto switchD_002c5379_caseD_40;\n        case 0x41:\n          goto LAB_002c6ccf;\n        case 0x8b:\n          goto LAB_002c6bb8;\n        case 0x8c:\n          goto LAB_002c6c3e;\n        case 0x8d:\n          goto LAB_002c69c5;\n        case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;\n        }" ({ "{") (case_statement "default:\n          goto switchD_002c5379_caseD_0;" (default "default") (: ":") (goto_statement "goto switchD_002c5379_caseD_0;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_0") (; ";"))) (case_statement "case 1:\n          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }\n          goto LAB_002c70ec;" (case "case") (number_literal "1") (: ":") (expression_statement "uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;" (assignment_expression "uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8" (identifier "uVar15") (= "=") (binary_expression "(ushort)*param_10 << 8 | (ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10 << 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" (( "(") (identifier "ushort") () ")")) (* "*") (identifier "param_10")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "(ushort)*param_10 >> 8" (binary_expression "(ushort)*param_10" (parenthesized_expression "(ushort)" (( "(") (identifier "ushort") () ")")) (* "*") (identifier "param_10")) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" (identifier "uVar17") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n            uVar17 = (uint)uVar15;\n            if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }\n          }" ({ "{") (expression_statement "uVar17 = (uint)uVar15;" (assignment_expression "uVar17 = (uint)uVar15" (identifier "uVar17") (= "=") (cast_expression "(uint)uVar15" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar15"))) (; ";")) (if_statement "if ((short)uVar15 < 0) {\n              uVar17 = uVar15 - 0x10000;\n            }" (if "if") (parenthesized_expression "((short)uVar15 < 0)" (( "(") (binary_expression "(short)uVar15 < 0" (cast_expression "(short)uVar15" (( "(") (type_descriptor "short" (sized_type_specifier "short" (short "short"))) () ")") (identifier "uVar15")) (< "<") (number_literal "0")) () ")")) (compound_statement "{\n              uVar17 = uVar15 - 0x10000;\n            }" ({ "{") (expression_statement "uVar17 = uVar15 - 0x10000;" (assignment_expression "uVar17 = uVar15 - 0x10000" (identifier "uVar17") (= "=") (binary_expression "uVar15 - 0x10000" (identifier "uVar15") (- "-") (number_literal "0x10000"))) (; ";")) (} "}"))) (} "}"))) (goto_statement "goto LAB_002c70ec;" (goto "goto") (statement_identifier "LAB_002c70ec") (; ";"))) (case_statement "case 2:\n          goto switchD_002c5379_caseD_2;" (case "case") (number_literal "2") (: ":") (goto_statement "goto switchD_002c5379_caseD_2;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_2") (; ";"))) (case_statement "case 3:\n          goto switchD_002c4f87_caseD_3;" (case "case") (number_literal "3") (: ":") (goto_statement "goto switchD_002c4f87_caseD_3;" (goto "goto") (statement_identifier "switchD_002c4f87_caseD_3") (; ";"))) (case_statement "case 4:" (case "case") (number_literal "4") (: ":")) (case_statement "case 100:" (case "case") (number_literal "100") (: ":")) (case_statement "case 0x85:\n          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n          uVar36 = (uint)*param_10;\n          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;\n          uVar45 = uVar16 | uVar36 << 0x18;\n          local_c0 = local_c8;\n          if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }\n          goto LAB_002c5940;" (case "case") (number_literal "0x85") (: ":") (expression_statement "bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);" (assignment_expression "bVar51 = (bool)((!bVar49 || !bVar50) & local_e3)" (identifier "bVar51") (= "=") (cast_expression "(bool)((!bVar49 || !bVar50) & local_e3)" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (parenthesized_expression "((!bVar49 || !bVar50) & local_e3)" (( "(") (binary_expression "(!bVar49 || !bVar50) & local_e3" (parenthesized_expression "(!bVar49 || !bVar50)" (( "(") (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" (! "!") (identifier "bVar49")) (|| "||") (unary_expression "!bVar50" (! "!") (identifier "bVar50"))) () ")")) (& "&") (identifier "local_e3")) () ")")))) (; ";")) (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" (identifier "uVar36") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;" (assignment_expression "uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (identifier "uVar16") (= "=") (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" (identifier "uVar36") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" (( "(") (binary_expression "uVar36 & 0xff0000" (identifier "uVar36") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")))) (; ";")) (expression_statement "uVar45 = uVar16 | uVar36 << 0x18;" (assignment_expression "uVar45 = uVar16 | uVar36 << 0x18" (identifier "uVar45") (= "=") (binary_expression "uVar16 | uVar36 << 0x18" (identifier "uVar16") (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "local_c0 = local_c8;" (assignment_expression "local_c0 = local_c8" (identifier "local_c0") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 == false) {\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }\n          else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }" (if "if") (parenthesized_expression "(bVar48 == false)" (( "(") (binary_expression "bVar48 == false" (identifier "bVar48") (== "==") (false "false")) () ")")) (compound_statement "{\nLAB_002c7644:\n            bVar10 = bVar48;\n            if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }\nLAB_002c7cf3:\n            bVar48 = bVar10;\n            bVar52 = FUN_001d7270(param_9,plVar3,0);\n            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;\n            uVar21 = gettext("JALX to a non-word-aligned address");\n            FUN_0034a800(uVar21);\nLAB_002c7d32:\n            uVar16 = 2;\n          }" ({ "{") (labeled_statement "LAB_002c7644:\n            bVar10 = bVar48;" (statement_identifier "LAB_002c7644") (: ":") (expression_statement "bVar10 = bVar48;" (assignment_expression "bVar10 = bVar48" (identifier "bVar10") (= "=") (identifier "bVar48")) (; ";"))) (if_statement "if (bVar51 == false) {\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }" (if "if") (parenthesized_expression "(bVar51 == false)" (( "(") (binary_expression "bVar51 == false" (identifier "bVar51") (== "==") (false "false")) () ")")) (compound_statement "{\nLAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;\n              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;\n              if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }\n              local_118 = 1;\n              uVar36 = local_c0 & 0x7ffffff;\n              if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }\n              goto LAB_002c73f5;\n            }" ({ "{") (labeled_statement "LAB_002c764c:\n              bVar51 = param_8 == (undefined8 *)0x0;" (statement_identifier "LAB_002c764c") (: ":") (expression_statement "bVar51 = param_8 == (undefined8 *)0x0;" (assignment_expression "bVar51 = param_8 == (undefined8 *)0x0" (identifier "bVar51") (= "=") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";"))) (if_statement "if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;" (if "if") (parenthesized_expression "((local_e3 == 1) || (uVar17 != 0x85))" (( "(") (binary_expression "(local_e3 == 1) || (uVar17 != 0x85)" (parenthesized_expression "(local_e3 == 1)" (( "(") (binary_expression "local_e3 == 1" (identifier "local_e3") (== "==") (number_literal "1")) () ")")) (|| "||") (parenthesized_expression "(uVar17 != 0x85)" (( "(") (binary_expression "uVar17 != 0x85" (identifier "uVar17") (!= "!=") (number_literal "0x85")) () ")"))) () ")")) (goto_statement "goto LAB_002c73c9;" (goto "goto") (statement_identifier "LAB_002c73c9") (; ";"))) (if_statement "if (bVar51) {\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }" (if "if") (parenthesized_expression "(bVar51)" (( "(") (identifier "bVar51") () ")")) (compound_statement "{\n                local_118 = 1;\n                uVar36 = 0xf8000000;\n                goto LAB_002c73e1;\n              }" ({ "{") (expression_statement "local_118 = 1;" (assignment_expression "local_118 = 1" (identifier "local_118") (= "=") (number_literal "1")) (; ";")) (expression_statement "uVar36 = 0xf8000000;" (assignment_expression "uVar36 = 0xf8000000" (identifier "uVar36") (= "=") (number_literal "0xf8000000")) (; ";")) (goto_statement "goto LAB_002c73e1;" (goto "goto") (statement_identifier "LAB_002c73e1") (; ";")) (} "}"))) (expression_statement "local_118 = 1;" (assignment_expression "local_118 = 1" (identifier "local_118") (= "=") (number_literal "1")) (; ";")) (expression_statement "uVar36 = local_c0 & 0x7ffffff;" (assignment_expression "uVar36 = local_c0 & 0x7ffffff" (identifier "uVar36") (= "=") (binary_expression "local_c0 & 0x7ffffff" (identifier "local_c0") (& "&") (number_literal "0x7ffffff"))) (; ";")) (if_statement "if ((local_c0 & 0x4000000) != 0) {\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }" (if "if") (parenthesized_expression "((local_c0 & 0x4000000) != 0)" (( "(") (binary_expression "(local_c0 & 0x4000000) != 0" (parenthesized_expression "(local_c0 & 0x4000000)" (( "(") (binary_expression "local_c0 & 0x4000000" (identifier "local_c0") (& "&") (number_literal "0x4000000")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;\n              }" ({ "{") (expression_statement "uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;" (assignment_expression "uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000" (identifier "uVar36") (= "=") (binary_expression "(local_c0 & 0x7ffffff) + 0xf8000000" (parenthesized_expression "(local_c0 & 0x7ffffff)" (( "(") (binary_expression "local_c0 & 0x7ffffff" (identifier "local_c0") (& "&") (number_literal "0x7ffffff")) () ")")) (+ "+") (number_literal "0xf8000000"))) (; ";")) (} "}"))) (goto_statement "goto LAB_002c73f5;" (goto "goto") (statement_identifier "LAB_002c73f5") (; ";")) (} "}"))) (labeled_statement "LAB_002c7cf3:\n            bVar48 = bVar10;" (statement_identifier "LAB_002c7cf3") (: ":") (expression_statement "bVar48 = bVar10;" (assignment_expression "bVar48 = bVar10" (identifier "bVar48") (= "=") (identifier "bVar10")) (; ";"))) (expression_statement "bVar52 = FUN_001d7270(param_9,plVar3,0);" (assignment_expression "bVar52 = FUN_001d7270(param_9,plVar3,0)" (identifier "bVar52") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,0)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,0)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;" (if "if") (parenthesized_expression "((bool)(bVar52 & 3) == (uVar17 == 4))" (( "(") (binary_expression "(bool)(bVar52 & 3) == (uVar17 == 4)" (cast_expression "(bool)(bVar52 & 3)" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (parenthesized_expression "(bVar52 & 3)" (( "(") (binary_expression "bVar52 & 3" (identifier "bVar52") (& "&") (number_literal "3")) () ")"))) (== "==") (parenthesized_expression "(uVar17 == 4)" (( "(") (binary_expression "uVar17 == 4" (identifier "uVar17") (== "==") (number_literal "4")) () ")"))) () ")")) (goto_statement "goto LAB_002c764c;" (goto "goto") (statement_identifier "LAB_002c764c") (; ";"))) (expression_statement "uVar21 = gettext("JALX to a non-word-aligned address");" (assignment_expression "uVar21 = gettext("JALX to a non-word-aligned address")" (identifier "uVar21") (= "=") (call_expression "gettext("JALX to a non-word-aligned address")" (identifier "gettext") (argument_list "("JALX to a non-word-aligned address")" (( "(") (string_literal ""JALX to a non-word-aligned address"" (" """) (string_content "JALX to a non-word-aligned address") (" """)) () ")")))) (; ";")) (expression_statement "FUN_0034a800(uVar21);" (call_expression "FUN_0034a800(uVar21)" (identifier "FUN_0034a800") (argument_list "(uVar21)" (( "(") (identifier "uVar21") () ")"))) (; ";")) (labeled_statement "LAB_002c7d32:\n            uVar16 = 2;" (statement_identifier "LAB_002c7d32") (: ":") (expression_statement "uVar16 = 2;" (assignment_expression "uVar16 = 2" (identifier "uVar16") (= "=") (number_literal "2")) (; ";"))) (} "}")) (else_clause "else {\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }" (else "else") (compound_statement "{\n            if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }\n            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;\n            bVar10 = bVar51;\n            if (bVar51 != false) goto LAB_002c7cf3;\nLAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;\n            if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }\nLAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n            if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }\n            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;\n            if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }\n            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }\n            if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n            uVar16 = 0;\n            *(uint *)param_1 = uVar19;\n          }" ({ "{") (if_statement "if (uVar17 == 0x85) {\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }" (if "if") (parenthesized_expression "(uVar17 == 0x85)" (( "(") (binary_expression "uVar17 == 0x85" (identifier "uVar17") (== "==") (number_literal "0x85")) () ")")) (compound_statement "{\n              local_c0 = uVar45 * 2 & 0x7fffffe;\n              goto LAB_002c7644;\n            }" ({ "{") (expression_statement "local_c0 = uVar45 * 2 & 0x7fffffe;" (assignment_expression "local_c0 = uVar45 * 2 & 0x7fffffe" (identifier "local_c0") (= "=") (binary_expression "uVar45 * 2 & 0x7fffffe" (binary_expression "uVar45 * 2" (identifier "uVar45") (* "*") (number_literal "2")) (& "&") (number_literal "0x7fffffe"))) (; ";")) (goto_statement "goto LAB_002c7644;" (goto "goto") (statement_identifier "LAB_002c7644") (; ";")) (} "}"))) (expression_statement "local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;" (assignment_expression "local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2" (identifier "local_c0") (= "=") (binary_expression "(uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2" (parenthesized_expression "(uVar16 | uVar36 << 0x18 & 0x3ffffff)" (( "(") (binary_expression "uVar16 | uVar36 << 0x18 & 0x3ffffff" (identifier "uVar16") (| "|") (binary_expression "uVar36 << 0x18 & 0x3ffffff" (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18")) (& "&") (number_literal "0x3ffffff"))) () ")")) (<< "<<") (number_literal "2"))) (; ";")) (expression_statement "bVar10 = bVar51;" (assignment_expression "bVar10 = bVar51" (identifier "bVar10") (= "=") (identifier "bVar51")) (; ";")) (if_statement "if (bVar51 != false) goto LAB_002c7cf3;" (if "if") (parenthesized_expression "(bVar51 != false)" (( "(") (binary_expression "bVar51 != false" (identifier "bVar51") (!= "!=") (false "false")) () ")")) (goto_statement "goto LAB_002c7cf3;" (goto "goto") (statement_identifier "LAB_002c7cf3") (; ";"))) (labeled_statement "LAB_002c73c9:\n            bVar51 = param_8 == (undefined8 *)0x0;" (statement_identifier "LAB_002c73c9") (: ":") (expression_statement "bVar51 = param_8 == (undefined8 *)0x0;" (assignment_expression "bVar51 = param_8 == (undefined8 *)0x0" (identifier "bVar51") (= "=") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";"))) (if_statement "if (bVar51) {\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }\n            else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }" (if "if") (parenthesized_expression "(bVar51)" (( "(") (identifier "bVar51") () ")")) (compound_statement "{\n              local_118 = 2;\n              uVar36 = 0xf0000000;\nLAB_002c73e1:\n              bVar51 = true;\n              uVar36 = param_11 + 4 & uVar36 | local_c0;\n            }" ({ "{") (expression_statement "local_118 = 2;" (assignment_expression "local_118 = 2" (identifier "local_118") (= "=") (number_literal "2")) (; ";")) (expression_statement "uVar36 = 0xf0000000;" (assignment_expression "uVar36 = 0xf0000000" (identifier "uVar36") (= "=") (number_literal "0xf0000000")) (; ";")) (labeled_statement "LAB_002c73e1:\n              bVar51 = true;" (statement_identifier "LAB_002c73e1") (: ":") (expression_statement "bVar51 = true;" (assignment_expression "bVar51 = true" (identifier "bVar51") (= "=") (true "true")) (; ";"))) (expression_statement "uVar36 = param_11 + 4 & uVar36 | local_c0;" (assignment_expression "uVar36 = param_11 + 4 & uVar36 | local_c0" (identifier "uVar36") (= "=") (binary_expression "param_11 + 4 & uVar36 | local_c0" (binary_expression "param_11 + 4 & uVar36" (binary_expression "param_11 + 4" (identifier "param_11") (+ "+") (number_literal "4")) (& "&") (identifier "uVar36")) (| "|") (identifier "local_c0"))) (; ";")) (} "}")) (else_clause "else {\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }" (else "else") (compound_statement "{\n              local_118 = 2;\n              uVar36 = local_c0 & 0xfffffff;\n              if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }\n            }" ({ "{") (expression_statement "local_118 = 2;" (assignment_expression "local_118 = 2" (identifier "local_118") (= "=") (number_literal "2")) (; ";")) (expression_statement "uVar36 = local_c0 & 0xfffffff;" (assignment_expression "uVar36 = local_c0 & 0xfffffff" (identifier "uVar36") (= "=") (binary_expression "local_c0 & 0xfffffff" (identifier "local_c0") (& "&") (number_literal "0xfffffff"))) (; ";")) (if_statement "if ((local_c0 & 0x8000000) != 0) {\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }" (if "if") (parenthesized_expression "((local_c0 & 0x8000000) != 0)" (( "(") (binary_expression "(local_c0 & 0x8000000) != 0" (parenthesized_expression "(local_c0 & 0x8000000)" (( "(") (binary_expression "local_c0 & 0x8000000" (identifier "local_c0") (& "&") (number_literal "0x8000000")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;\n              }" ({ "{") (expression_statement "uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;" (assignment_expression "uVar36 = (local_c0 & 0xfffffff) + 0xf0000000" (identifier "uVar36") (= "=") (binary_expression "(local_c0 & 0xfffffff) + 0xf0000000" (parenthesized_expression "(local_c0 & 0xfffffff)" (( "(") (binary_expression "local_c0 & 0xfffffff" (identifier "local_c0") (& "&") (number_literal "0xfffffff")) () ")")) (+ "+") (number_literal "0xf0000000"))) (; ";")) (} "}"))) (} "}")))) (labeled_statement "LAB_002c73f5:\n            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);" (statement_identifier "LAB_002c73f5") (: ":") (expression_statement "uVar36 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "uVar36 = FUN_001d7270(param_9,plVar3,uVar36)" (identifier "uVar36") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar36)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar36") () ")")))) (; ";"))) (if_statement "if (((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }" (if "if") (parenthesized_expression "(((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f)))))" (( "(") (binary_expression "((!bVar51) && (!bVar49 || !bVar50)) &&\n               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))" (parenthesized_expression "((!bVar51) && (!bVar49 || !bVar50))" (( "(") (binary_expression "(!bVar51) && (!bVar49 || !bVar50)" (parenthesized_expression "(!bVar51)" (( "(") (unary_expression "!bVar51" (! "!") (identifier "bVar51")) () ")")) (&& "&&") (parenthesized_expression "(!bVar49 || !bVar50)" (( "(") (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" (! "!") (identifier "bVar49")) (|| "||") (unary_expression "!bVar50" (! "!") (identifier "bVar50"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))" (( "(") (parenthesized_expression "(cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f)))" (( "(") (comma_expression "cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))" (assignment_expression "cVar13 = FUN_002e7200(param_8)" (identifier "cVar13") (= "=") (call_expression "FUN_002e7200(param_8)" (identifier "FUN_002e7200") (argument_list "(param_8)" (( "(") (identifier "param_8") () ")")))) (, ",") (binary_expression "cVar13 == '\0' &&\n                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))" (binary_expression "cVar13 == '\0'" (identifier "cVar13") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (&& "&&") (parenthesized_expression "((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))" (( "(") (binary_expression "(uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f)" (binary_expression "(uVar36 >> local_118) >> 0x1a" (parenthesized_expression "(uVar36 >> local_118)" (( "(") (binary_expression "uVar36 >> local_118" (identifier "uVar36") (>> ">>") (identifier "local_118")) () ")")) (>> ">>") (number_literal "0x1a")) (!= "!=") (binary_expression "param_11 + 4 >> (local_118 + 0x1aU & 0x1f)" (binary_expression "param_11 + 4" (identifier "param_11") (+ "+") (number_literal "4")) (>> ">>") (parenthesized_expression "(local_118 + 0x1aU & 0x1f)" (( "(") (binary_expression "local_118 + 0x1aU & 0x1f" (binary_expression "local_118 + 0x1aU" (identifier "local_118") (+ "+") (number_literal "0x1aU")) (& "&") (number_literal "0x1f")) () ")")))) () ")")))) () ")")) () ")"))) () ")")) (compound_statement "{\nLAB_002c7359:\n              uVar16 = 1;\n              goto LAB_002c5940;\n            }" ({ "{") (labeled_statement "LAB_002c7359:\n              uVar16 = 1;" (statement_identifier "LAB_002c7359") (: ":") (expression_statement "uVar16 = 1;" (assignment_expression "uVar16 = 1" (identifier "uVar16") (= "=") (number_literal "1")) (; ";"))) (goto_statement "goto LAB_002c5940;" (goto "goto") (statement_identifier "LAB_002c5940") (; ";")) (} "}"))) (expression_statement "uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;" (assignment_expression "uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff" (identifier "uVar19") (= "=") (binary_expression "uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff" (identifier "uVar45") (^ "^") (binary_expression "(uVar36 >> local_118 ^ uVar45) & 0x3ffffff" (parenthesized_expression "(uVar36 >> local_118 ^ uVar45)" (( "(") (binary_expression "uVar36 >> local_118 ^ uVar45" (binary_expression "uVar36 >> local_118" (identifier "uVar36") (>> ">>") (identifier "local_118")) (^ "^") (identifier "uVar45")) () ")")) (& "&") (number_literal "0x3ffffff")))) (; ";")) (if_statement "if (local_e3 != 0) {\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }" (if "if") (parenthesized_expression "(local_e3 != 0)" (( "(") (binary_expression "local_e3 != 0" (identifier "local_e3") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              uVar45 = uVar45 >> 0x1a;\n              if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }\n              if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }\n              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;\n            }" ({ "{") (expression_statement "uVar45 = uVar45 >> 0x1a;" (assignment_expression "uVar45 = uVar45 >> 0x1a" (identifier "uVar45") (= "=") (binary_expression "uVar45 >> 0x1a" (identifier "uVar45") (>> ">>") (number_literal "0x1a"))) (; ";")) (if_statement "if (uVar17 == 100) {\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }\n              else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" (if "if") (parenthesized_expression "(uVar17 == 100)" (( "(") (binary_expression "uVar17 == 100" (identifier "uVar17") (== "==") (number_literal "100")) () ")")) (compound_statement "{\n                iVar38 = 7;\n                bVar51 = uVar45 - 6 < 2;\n              }" ({ "{") (expression_statement "iVar38 = 7;" (assignment_expression "iVar38 = 7" (identifier "iVar38") (= "=") (number_literal "7")) (; ";")) (expression_statement "bVar51 = uVar45 - 6 < 2;" (assignment_expression "bVar51 = uVar45 - 6 < 2" (identifier "bVar51") (= "=") (binary_expression "uVar45 - 6 < 2" (binary_expression "uVar45 - 6" (identifier "uVar45") (- "-") (number_literal "6")) (< "<") (number_literal "2"))) (; ";")) (} "}")) (else_clause "else if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" (else "else") (if_statement "if (uVar17 == 0x85) {\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }\n              else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" (if "if") (parenthesized_expression "(uVar17 == 0x85)" (( "(") (binary_expression "uVar17 == 0x85" (identifier "uVar17") (== "==") (number_literal "0x85")) () ")")) (compound_statement "{\n                iVar38 = 0x3c;\n                bVar51 = uVar45 - 0x3c < 2;\n              }" ({ "{") (expression_statement "iVar38 = 0x3c;" (assignment_expression "iVar38 = 0x3c" (identifier "iVar38") (= "=") (number_literal "0x3c")) (; ";")) (expression_statement "bVar51 = uVar45 - 0x3c < 2;" (assignment_expression "bVar51 = uVar45 - 0x3c < 2" (identifier "bVar51") (= "=") (binary_expression "uVar45 - 0x3c < 2" (binary_expression "uVar45 - 0x3c" (identifier "uVar45") (- "-") (number_literal "0x3c")) (< "<") (number_literal "2"))) (; ";")) (} "}")) (else_clause "else {\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" (else "else") (compound_statement "{\n                bVar51 = uVar45 == 3 || uVar45 == 0x1d;\n                iVar38 = 0x1d;\n              }" ({ "{") (expression_statement "bVar51 = uVar45 == 3 || uVar45 == 0x1d;" (assignment_expression "bVar51 = uVar45 == 3 || uVar45 == 0x1d" (identifier "bVar51") (= "=") (binary_expression "uVar45 == 3 || uVar45 == 0x1d" (binary_expression "uVar45 == 3" (identifier "uVar45") (== "==") (number_literal "3")) (|| "||") (binary_expression "uVar45 == 0x1d" (identifier "uVar45") (== "==") (number_literal "0x1d")))) (; ";")) (expression_statement "iVar38 = 0x1d;" (assignment_expression "iVar38 = 0x1d" (identifier "iVar38") (= "=") (number_literal "0x1d")) (; ";")) (} "}")))))) (if_statement "if ((!bVar51) && (!bVar49 || !bVar50)) {\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }" (if "if") (parenthesized_expression "((!bVar51) && (!bVar49 || !bVar50))" (( "(") (binary_expression "(!bVar51) && (!bVar49 || !bVar50)" (parenthesized_expression "(!bVar51)" (( "(") (unary_expression "!bVar51" (! "!") (identifier "bVar51")) () ")")) (&& "&&") (parenthesized_expression "(!bVar49 || !bVar50)" (( "(") (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" (! "!") (identifier "bVar49")) (|| "||") (unary_expression "!bVar50" (! "!") (identifier "bVar50"))) () ")"))) () ")")) (compound_statement "{\n                uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );\n                FUN_0034a750(uVar21);\n                goto LAB_002c7d32;\n              }" ({ "{") (expression_statement "uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                );" (assignment_expression "uVar21 = gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                )" (identifier "uVar21") (= "=") (call_expression "gettext(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                )" (identifier "gettext") (argument_list "(\n                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."\n                                )" (( "(") (string_literal ""Unsupported jump between ISA modes; consider recompiling with interlinking enabled."" (" """) (string_content "Unsupported jump between ISA modes; consider recompiling with interlinking enabled.") (" """)) () ")")))) (; ";")) (expression_statement "FUN_0034a750(uVar21);" (call_expression "FUN_0034a750(uVar21)" (identifier "FUN_0034a750") (argument_list "(uVar21)" (( "(") (identifier "uVar21") () ")"))) (; ";")) (goto_statement "goto LAB_002c7d32;" (goto "goto") (statement_identifier "LAB_002c7d32") (; ";")) (} "}"))) (expression_statement "uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;" (assignment_expression "uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a" (identifier "uVar19") (= "=") (binary_expression "uVar19 & 0x3ffffff | iVar38 << 0x1a" (binary_expression "uVar19 & 0x3ffffff" (identifier "uVar19") (& "&") (number_literal "0x3ffffff")) (| "|") (binary_expression "iVar38 << 0x1a" (identifier "iVar38") (<< "<<") (number_literal "0x1a")))) (; ";")) (} "}"))) (if_statement "if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {\n                    \n              FUN_002932f0();\n            }" (if "if") (parenthesized_expression "(*(long *)(PTR_DAT_0067cb08 + 0x10) == 0)" (( "(") (binary_expression "*(long *)(PTR_DAT_0067cb08 + 0x10) == 0" (pointer_expression "*(long *)(PTR_DAT_0067cb08 + 0x10)" (* "*") (cast_expression "(long *)(PTR_DAT_0067cb08 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_0067cb08 + 0x10)" (( "(") (binary_expression "PTR_DAT_0067cb08 + 0x10" (identifier "PTR_DAT_0067cb08") (+ "+") (number_literal "0x10")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n              FUN_002932f0();\n            }" ({ "{") (expression_statement "FUN_002932f0();" (call_expression "FUN_002932f0()" (identifier "FUN_002932f0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if (!bVar49 || !bVar50) goto LAB_002c5ccb;" (if "if") (parenthesized_expression "(!bVar49 || !bVar50)" (( "(") (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" (! "!") (identifier "bVar49")) (|| "||") (unary_expression "!bVar50" (! "!") (identifier "bVar50"))) () ")")) (goto_statement "goto LAB_002c5ccb;" (goto "goto") (statement_identifier "LAB_002c5ccb") (; ";"))) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint *)param_1 = uVar19;" (assignment_expression "*(uint *)param_1 = uVar19" (pointer_expression "*(uint *)param_1" (* "*") (cast_expression "(uint *)param_1" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (= "=") (identifier "uVar19")) (; ";")) (} "}")))) (goto_statement "goto LAB_002c5940;" (goto "goto") (statement_identifier "LAB_002c5940") (; ";"))) (case_statement "case 5:" (case "case") (number_literal "5") (: ":")) (case_statement "case 0x68:" (case "case") (number_literal "0x68") (: ":")) (case_statement "case 0x86:\n          goto switchD_002c5379_caseD_5;" (case "case") (number_literal "0x86") (: ":") (goto_statement "goto switchD_002c5379_caseD_5;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_5") (; ";"))) (case_statement "case 6:" (case "case") (number_literal "6") (: ":")) (case_statement "case 0x69:" (case "case") (number_literal "0x69") (: ":")) (case_statement "case 0x87:" (case "case") (number_literal "0x87") (: ":")) (case_statement "case 0x9d:\n          local_130 = (uint)*param_10;\n          uVar16 = (local_130 & 0xff0000) >> 8;\n          uVar45 = local_130 >> 0x18 | uVar16;\n          uVar19 = local_c8;\n          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }\n          goto LAB_002c7171;" (case "case") (number_literal "0x9d") (: ":") (expression_statement "local_130 = (uint)*param_10;" (assignment_expression "local_130 = (uint)*param_10" (identifier "local_130") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar16 = (local_130 & 0xff0000) >> 8;" (assignment_expression "uVar16 = (local_130 & 0xff0000) >> 8" (identifier "uVar16") (= "=") (binary_expression "(local_130 & 0xff0000) >> 8" (parenthesized_expression "(local_130 & 0xff0000)" (( "(") (binary_expression "local_130 & 0xff0000" (identifier "local_130") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (; ";")) (expression_statement "uVar45 = local_130 >> 0x18 | uVar16;" (assignment_expression "uVar45 = local_130 >> 0x18 | uVar16" (identifier "uVar45") (= "=") (binary_expression "local_130 >> 0x18 | uVar16" (binary_expression "local_130 >> 0x18" (identifier "local_130") (>> ">>") (number_literal "0x18")) (| "|") (identifier "uVar16"))) (; ";")) (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" (identifier "uVar19") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {\n            uVar19 = uVar45;\n          }" (if "if") (parenthesized_expression "((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0))" (( "(") (binary_expression "(bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)" (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (&& "&&") (parenthesized_expression "(uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)" (( "(") (comma_expression "uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0" (assignment_expression "uVar19 = uVar45 - 0x10000" (identifier "uVar19") (= "=") (binary_expression "uVar45 - 0x10000" (identifier "uVar45") (- "-") (number_literal "0x10000"))) (, ",") (binary_expression "(uVar16 & 0x8000) == 0" (parenthesized_expression "(uVar16 & 0x8000)" (( "(") (binary_expression "uVar16 & 0x8000" (identifier "uVar16") (& "&") (number_literal "0x8000")) () ")")) (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n            uVar19 = uVar45;\n          }" ({ "{") (expression_statement "uVar19 = uVar45;" (assignment_expression "uVar19 = uVar45" (identifier "uVar19") (= "=") (identifier "uVar45")) (; ";")) (} "}"))) (goto_statement "goto LAB_002c7171;" (goto "goto") (statement_identifier "LAB_002c7171") (; ";"))) (case_statement "case 7:" (case "case") (number_literal "7") (: ":")) (case_statement "case 8:" (case "case") (number_literal "8") (: ":")) (case_statement "case 0x65:" (case "case") (number_literal "0x65") (: ":")) (case_statement "case 0x88:" (case "case") (number_literal "0x88") (: ":")) (case_statement "case 0x89:" (case "case") (number_literal "0x89") (: ":")) (case_statement "case 0xac:\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (lVar30 != 0) goto LAB_002c7253;\n          iVar38 = 0;\nLAB_002c7297:\n          uVar36 = (uint)*param_10;\n          uVar19 = (uVar36 & 0xff0000) >> 8;\n          uVar16 = uVar36 >> 0x18 | uVar19;\n          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }\n          goto LAB_002c72d4;" (case "case") (number_literal "0xac") (: ":") (expression_statement "lVar30 = *(long *)(param_4 + 0x28);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x28)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x28)" (* "*") (cast_expression "(long *)(param_4 + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x28)" (( "(") (binary_expression "param_4 + 0x28" (identifier "param_4") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (if_statement "if (lVar30 != 0) goto LAB_002c7253;" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c7253;" (goto "goto") (statement_identifier "LAB_002c7253") (; ";"))) (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" (identifier "iVar38") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_002c7297:\n          uVar36 = (uint)*param_10;" (statement_identifier "LAB_002c7297") (: ":") (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" (identifier "uVar36") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar19 = (uVar36 & 0xff0000) >> 8;" (assignment_expression "uVar19 = (uVar36 & 0xff0000) >> 8" (identifier "uVar19") (= "=") (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" (( "(") (binary_expression "uVar36 & 0xff0000" (identifier "uVar36") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (; ";")) (expression_statement "uVar16 = uVar36 >> 0x18 | uVar19;" (assignment_expression "uVar16 = uVar36 >> 0x18 | uVar19" (identifier "uVar16") (= "=") (binary_expression "uVar36 >> 0x18 | uVar19" (binary_expression "uVar36 >> 0x18" (identifier "uVar36") (>> ">>") (number_literal "0x18")) (| "|") (identifier "uVar19"))) (; ";")) (expression_statement "uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;" (assignment_expression "uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (identifier "uVar45") (= "=") (binary_expression "uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar16 | (uVar36 & 0xff00) << 8" (identifier "uVar16") (| "|") (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" (identifier "uVar36") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n            if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }\n          }" ({ "{") (if_statement "if (uVar17 == 0xac) {\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }\n            else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }" (if "if") (parenthesized_expression "(uVar17 == 0xac)" (( "(") (binary_expression "uVar17 == 0xac" (identifier "uVar17") (== "==") (number_literal "0xac")) () ")")) (compound_statement "{\n              uVar36 = uVar45 * 4 & 0x1fc;\n            }" ({ "{") (expression_statement "uVar36 = uVar45 * 4 & 0x1fc;" (assignment_expression "uVar36 = uVar45 * 4 & 0x1fc" (identifier "uVar36") (= "=") (binary_expression "uVar45 * 4 & 0x1fc" (binary_expression "uVar45 * 4" (identifier "uVar45") (* "*") (number_literal "4")) (& "&") (number_literal "0x1fc"))) (; ";")) (} "}")) (else_clause "else {\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }" (else "else") (compound_statement "{\n              uVar36 = uVar16 - 0x10000;\n              if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }\n            }" ({ "{") (expression_statement "uVar36 = uVar16 - 0x10000;" (assignment_expression "uVar36 = uVar16 - 0x10000" (identifier "uVar36") (= "=") (binary_expression "uVar16 - 0x10000" (identifier "uVar16") (- "-") (number_literal "0x10000"))) (; ";")) (if_statement "if ((uVar19 & 0x8000) == 0) {\n                uVar36 = uVar16;\n              }" (if "if") (parenthesized_expression "((uVar19 & 0x8000) == 0)" (( "(") (binary_expression "(uVar19 & 0x8000) == 0" (parenthesized_expression "(uVar19 & 0x8000)" (( "(") (binary_expression "uVar19 & 0x8000" (identifier "uVar19") (& "&") (number_literal "0x8000")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                uVar36 = uVar16;\n              }" ({ "{") (expression_statement "uVar36 = uVar16;" (assignment_expression "uVar36 = uVar16" (identifier "uVar36") (= "=") (identifier "uVar16")) (; ";")) (} "}"))) (} "}")))) (} "}"))) (goto_statement "goto LAB_002c72d4;" (goto "goto") (statement_identifier "LAB_002c72d4") (; ";"))) (case_statement "case 9:" (case "case") (number_literal "9") (: ":")) (case_statement "case 0x66:" (case "case") (number_literal "0x66") (: ":")) (case_statement "case 0x8a:\n          goto switchD_002c5379_caseD_9;" (case "case") (number_literal "0x8a") (: ":") (goto_statement "goto switchD_002c5379_caseD_9;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_9") (; ";"))) (case_statement "case 10:\n          goto LAB_002c6a55;" (case "case") (number_literal "10") (: ":") (goto_statement "goto LAB_002c6a55;" (goto "goto") (statement_identifier "LAB_002c6a55") (; ";"))) (case_statement "case 0xb:" (case "case") (number_literal "0xb") (: ":")) (case_statement "case 0x67:" (case "case") (number_literal "0x67") (: ":")) (case_statement "case 0x8e:\n          goto switchD_002c5379_caseD_b;" (case "case") (number_literal "0x8e") (: ":") (goto_statement "goto switchD_002c5379_caseD_b;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_b") (; ";"))) (case_statement "case 0xc:\n          goto switchD_002c5379_caseD_c;" (case "case") (number_literal "0xc") (: ":") (goto_statement "goto switchD_002c5379_caseD_c;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_c") (; ";"))) (case_statement "case 0x12:\n          goto switchD_002c5379_caseD_12;" (case "case") (number_literal "0x12") (: ":") (goto_statement "goto switchD_002c5379_caseD_12;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_12") (; ";"))) (case_statement "case 0x13:" (case "case") (number_literal "0x13") (: ":")) (case_statement "case 0x91:" (case "case") (number_literal "0x91") (: ":")) (case_statement "case 0xf9:\n          goto switchD_002c5379_caseD_13;" (case "case") (number_literal "0xf9") (: ":") (goto_statement "goto switchD_002c5379_caseD_13;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_13") (; ";"))) (case_statement "case 0x14:" (case "case") (number_literal "0x14") (: ":")) (case_statement "case 0x92:\n          goto switchD_002c5379_caseD_14;" (case "case") (number_literal "0x92") (: ":") (goto_statement "goto switchD_002c5379_caseD_14;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_14") (; ";"))) (case_statement "case 0x15:" (case "case") (number_literal "0x15") (: ":")) (case_statement "case 0x93:\n          goto switchD_002c5379_caseD_15;" (case "case") (number_literal "0x93") (: ":") (goto_statement "goto switchD_002c5379_caseD_15;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_15") (; ";"))) (case_statement "case 0x16:" (case "case") (number_literal "0x16") (: ":")) (case_statement "case 0x1e:" (case "case") (number_literal "0x1e") (: ":")) (case_statement "case 0x94:" (case "case") (number_literal "0x94") (: ":")) (case_statement "case 0x99:\n          goto switchD_002c5379_caseD_16;" (case "case") (number_literal "0x99") (: ":") (goto_statement "goto switchD_002c5379_caseD_16;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_16") (; ";"))) (case_statement "case 0x17:" (case "case") (number_literal "0x17") (: ":")) (case_statement "case 0x1f:" (case "case") (number_literal "0x1f") (: ":")) (case_statement "case 0x95:" (case "case") (number_literal "0x95") (: ":")) (case_statement "case 0x9a:\n          goto switchD_002c5379_caseD_17;" (case "case") (number_literal "0x9a") (: ":") (goto_statement "goto switchD_002c5379_caseD_17;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_17") (; ";"))) (case_statement "case 0x18:" (case "case") (number_literal "0x18") (: ":")) (case_statement "case 0x96:\n          local_c0 = local_c8;\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }\n          goto LAB_002c6b1a;" (case "case") (number_literal "0x96") (: ":") (expression_statement "local_c0 = local_c8;" (assignment_expression "local_c0 = local_c8" (identifier "local_c0") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n            uVar34 = *param_10;\n            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;\n          }" ({ "{") (expression_statement "uVar34 = *param_10;" (assignment_expression "uVar34 = *param_10" (identifier "uVar34") (= "=") (pointer_expression "*param_10" (* "*") (identifier "param_10"))) (; ";")) (expression_statement "local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;" (assignment_expression "local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000" (identifier "local_c0") (= "=") (binary_expression "(uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000" (binary_expression "(uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |\n                       (uint)(uVar34 >> 0x18) & 0xff0000" (binary_expression "(uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8" (call_expression "(uint)(byte)(uVar34 >> 0x38)" (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(byte)" (( "(") (identifier "byte") () ")"))) (argument_list "(uVar34 >> 0x38)" (( "(") (binary_expression "uVar34 >> 0x38" (identifier "uVar34") (>> ">>") (number_literal "0x38")) () ")"))) (| "|") (binary_expression "((uint)(uVar34 >> 0x20) & 0xff0000) >> 8" (parenthesized_expression "((uint)(uVar34 >> 0x20) & 0xff0000)" (( "(") (binary_expression "(uint)(uVar34 >> 0x20) & 0xff0000" (call_expression "(uint)(uVar34 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar34 >> 0x20)" (( "(") (binary_expression "uVar34 >> 0x20" (identifier "uVar34") (>> ">>") (number_literal "0x20")) () ")"))) (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uint)(uVar34 >> 0x18) & 0xff0000" (call_expression "(uint)(uVar34 >> 0x18)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar34 >> 0x18)" (( "(") (binary_expression "uVar34 >> 0x18" (identifier "uVar34") (>> ">>") (number_literal "0x18")) () ")"))) (& "&") (number_literal "0xff0000"))) (| "|") (binary_expression "(uint)(uVar34 >> 8) & 0xff000000" (call_expression "(uint)(uVar34 >> 8)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar34 >> 8)" (( "(") (binary_expression "uVar34 >> 8" (identifier "uVar34") (>> ">>") (number_literal "8")) () ")"))) (& "&") (number_literal "0xff000000")))) (; ";")) (} "}"))) (goto_statement "goto LAB_002c6b1a;" (goto "goto") (statement_identifier "LAB_002c6b1a") (; ";"))) (case_statement "case 0x1c:" (case "case") (number_literal "0x1c") (: ":")) (case_statement "case 0x97:\n          goto LAB_002c59bd;" (case "case") (number_literal "0x97") (: ":") (goto_statement "goto LAB_002c59bd;" (goto "goto") (statement_identifier "LAB_002c59bd") (; ";"))) (case_statement "case 0x1d:" (case "case") (number_literal "0x1d") (: ":")) (case_statement "case 0x98:\n          goto LAB_002c6b55;" (case "case") (number_literal "0x98") (: ":") (goto_statement "goto LAB_002c6b55;" (goto "goto") (statement_identifier "LAB_002c6b55") (; ";"))) (case_statement "case 0x25:" (case "case") (number_literal "0x25") (: ":")) (case_statement "case 0x9c:\n          goto switchD_002c5379_caseD_25;" (case "case") (number_literal "0x9c") (: ":") (goto_statement "goto switchD_002c5379_caseD_25;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_25") (; ";"))) (case_statement "case 0x27:" (case "case") (number_literal "0x27") (: ":")) (case_statement "case 0x29:\n          goto switchD_002c5379_caseD_27;" (case "case") (number_literal "0x29") (: ":") (goto_statement "goto switchD_002c5379_caseD_27;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_27") (; ";"))) (case_statement "case 0x2a:" (case "case") (number_literal "0x2a") (: ":")) (case_statement "case 0x6a:" (case "case") (number_literal "0x6a") (: ":")) (case_statement "case 0xa2:\n          goto switchD_002c5379_caseD_2a;" (case "case") (number_literal "0xa2") (: ":") (goto_statement "goto switchD_002c5379_caseD_2a;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_2a") (; ";"))) (case_statement "case 0x2b:" (case "case") (number_literal "0x2b") (: ":")) (case_statement "case 0x6b:" (case "case") (number_literal "0x6b") (: ":")) (case_statement "case 0xa3:\n          goto switchD_002c5379_caseD_2b;" (case "case") (number_literal "0xa3") (: ":") (goto_statement "goto switchD_002c5379_caseD_2b;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_2b") (; ";"))) (case_statement "case 0x2c:" (case "case") (number_literal "0x2c") (: ":")) (case_statement "case 0x6c:" (case "case") (number_literal "0x6c") (: ":")) (case_statement "case 0xa4:\n          goto switchD_002c5379_caseD_2c;" (case "case") (number_literal "0xa4") (: ":") (goto_statement "goto switchD_002c5379_caseD_2c;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_2c") (; ";"))) (case_statement "case 0x2d:" (case "case") (number_literal "0x2d") (: ":")) (case_statement "case 0x6d:" (case "case") (number_literal "0x6d") (: ":")) (case_statement "case 0xa5:\n          goto switchD_002c5379_caseD_2d;" (case "case") (number_literal "0xa5") (: ":") (goto_statement "goto switchD_002c5379_caseD_2d;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_2d") (; ";"))) (case_statement "case 0x2e:" (case "case") (number_literal "0x2e") (: ":")) (case_statement "case 0x6e:" (case "case") (number_literal "0x6e") (: ":")) (case_statement "case 0xa6:\n          goto switchD_002c5379_caseD_2e;" (case "case") (number_literal "0xa6") (: ":") (goto_statement "goto switchD_002c5379_caseD_2e;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_2e") (; ";"))) (case_statement "case 0x2f:" (case "case") (number_literal "0x2f") (: ":")) (case_statement "case 0x30:\n          goto switchD_002c5379_caseD_2f;" (case "case") (number_literal "0x30") (: ":") (goto_statement "goto switchD_002c5379_caseD_2f;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_2f") (; ";"))) (case_statement "case 0x31:" (case "case") (number_literal "0x31") (: ":")) (case_statement "case 0x6f:" (case "case") (number_literal "0x6f") (: ":")) (case_statement "case 0xa9:\n          goto switchD_002c5379_caseD_31;" (case "case") (number_literal "0xa9") (: ":") (goto_statement "goto switchD_002c5379_caseD_31;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_31") (; ";"))) (case_statement "case 0x32:" (case "case") (number_literal "0x32") (: ":")) (case_statement "case 0x70:" (case "case") (number_literal "0x70") (: ":")) (case_statement "case 0xaa:\n          goto switchD_002c5379_caseD_32;" (case "case") (number_literal "0xaa") (: ":") (goto_statement "goto switchD_002c5379_caseD_32;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_32") (; ";"))) (case_statement "case 0x3c:\n          goto LAB_002c6f06;" (case "case") (number_literal "0x3c") (: ":") (goto_statement "goto LAB_002c6f06;" (goto "goto") (statement_identifier "LAB_002c6f06") (; ";"))) (case_statement "case 0x3d:\n          goto LAB_002c6fd2;" (case "case") (number_literal "0x3d") (: ":") (goto_statement "goto LAB_002c6fd2;" (goto "goto") (statement_identifier "LAB_002c6fd2") (; ";"))) (case_statement "case 0x3e:\n          goto LAB_002c6d53;" (case "case") (number_literal "0x3e") (: ":") (goto_statement "goto LAB_002c6d53;" (goto "goto") (statement_identifier "LAB_002c6d53") (; ";"))) (case_statement "case 0x3f:\n          goto LAB_002c6e24;" (case "case") (number_literal "0x3f") (: ":") (goto_statement "goto LAB_002c6e24;" (goto "goto") (statement_identifier "LAB_002c6e24") (; ";"))) (case_statement "case 0x40:\n          goto switchD_002c5379_caseD_40;" (case "case") (number_literal "0x40") (: ":") (goto_statement "goto switchD_002c5379_caseD_40;" (goto "goto") (statement_identifier "switchD_002c5379_caseD_40") (; ";"))) (case_statement "case 0x41:\n          goto LAB_002c6ccf;" (case "case") (number_literal "0x41") (: ":") (goto_statement "goto LAB_002c6ccf;" (goto "goto") (statement_identifier "LAB_002c6ccf") (; ";"))) (case_statement "case 0x8b:\n          goto LAB_002c6bb8;" (case "case") (number_literal "0x8b") (: ":") (goto_statement "goto LAB_002c6bb8;" (goto "goto") (statement_identifier "LAB_002c6bb8") (; ";"))) (case_statement "case 0x8c:\n          goto LAB_002c6c3e;" (case "case") (number_literal "0x8c") (: ":") (goto_statement "goto LAB_002c6c3e;" (goto "goto") (statement_identifier "LAB_002c6c3e") (; ";"))) (case_statement "case 0x8d:\n          goto LAB_002c69c5;" (case "case") (number_literal "0x8d") (: ":") (goto_statement "goto LAB_002c69c5;" (goto "goto") (statement_identifier "LAB_002c69c5") (; ";"))) (case_statement "case 0xf8:\n          uVar17 = local_c8;\n          if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }\n          goto LAB_002c6ed9;" (case "case") (number_literal "0xf8") (: ":") (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" (identifier "uVar17") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n            uVar17 = (uint)*param_10;\n            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          }" ({ "{") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;" (assignment_expression "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18" (identifier "uVar17") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar17 << 0x18" (identifier "uVar17") (<< "<<") (number_literal "0x18")))) (; ";")) (} "}"))) (goto_statement "goto LAB_002c6ed9;" (goto "goto") (statement_identifier "LAB_002c6ed9") (; ";"))) (} "}"))) (} "}"))) (expression_statement "local_c8 = (uint)*param_1;" (assignment_expression "local_c8 = (uint)*param_1" (identifier "local_c8") (= "=") (binary_expression "(uint)*param_1" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_1"))) (; ";")) (expression_statement "*(char *)((long)param_1 + 4) = cVar13;" (assignment_expression "*(char *)((long)param_1 + 4) = cVar13" (pointer_expression "*(char *)((long)param_1 + 4)" (* "*") (cast_expression "(char *)((long)param_1 + 4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_1 + 4)" (( "(") (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_1")) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "cVar13")) (; ";")) (expression_statement "local_c0 = local_c8;" (assignment_expression "local_c0 = local_c8" (identifier "local_c0") (= "=") (identifier "local_c8")) (; ";")) (switch_statement "switch(uVar17) {\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }" (switch "switch") (parenthesized_expression "(uVar17)" (( "(") (identifier "uVar17") () ")")) (compound_statement "{\n      default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;\n      case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;\n      case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;\n      case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");\n      case 4:\n      case 100:\n      case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;\n      case 5:\n      case 0x68:\n      case 0x86:\n        goto switchD_002c4f87_caseD_5;\n      case 6:\n      case 0x69:\n      case 0x87:\n      case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;\n      case 7:\n      case 8:\n      case 0x65:\n      case 0x88:\n      case 0x89:\n      case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;\n      case 9:\n      case 0x66:\n      case 0x8a:\n        goto switchD_002c4f87_caseD_9;\n      case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;\n      case 0xb:\n      case 0x67:\n      case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;\n      case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;\n      case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;\n      case 0x13:\n      case 0x91:\n      case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;\n      case 0x14:\n      case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;\n      case 0x15:\n      case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;\n      case 0x16:\n      case 0x1e:\n      case 0x94:\n      case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;\n      case 0x17:\n      case 0x1f:\n      case 0x95:\n      case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");\n      case 0x18:\n      case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;\n      case 0x1c:\n      case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;\n      case 0x1d:\n      case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;\n      case 0x25:\n      case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;\n      case 0x27:\n      case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      case 0x2a:\n      case 0x6a:\n      case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;\n      case 0x2b:\n      case 0x6b:\n      case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;\n      case 0x2c:\n      case 0x6c:\n      case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;\n      case 0x2d:\n      case 0x6d:\n      case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;\n      case 0x2e:\n      case 0x6e:\n      case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;\n      case 0x2f:\n      case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;\n      case 0x31:\n      case 0x6f:\n      case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;\n      case 0x32:\n      case 0x70:\n      case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;\n      case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;\n      case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;\n      case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;\n      case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;\n      case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;\n      case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;\n      case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;\n      case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;\n      case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;\n      case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;\n      }" ({ "{") (case_statement "default:\n        bVar48 = false;\nswitchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");\n        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);\n        break;" (default "default") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_0:\n        uVar21 = gettext("unsupported reloc %u");" (statement_identifier "switchD_002c5379_caseD_0") (: ":") (expression_statement "uVar21 = gettext("unsupported reloc %u");" (assignment_expression "uVar21 = gettext("unsupported reloc %u")" (identifier "uVar21") (= "=") (call_expression "gettext("unsupported reloc %u")" (identifier "gettext") (argument_list "("unsupported reloc %u")" (( "(") (string_literal ""unsupported reloc %u"" (" """) (string_content "unsupported reloc %u") (" """)) () ")")))) (; ";"))) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17)" (identifier "FUN_0034aed0") (argument_list "(param_2,param_6,uVar35,uVar21,uVar17)" (( "(") (identifier "param_2") (, ",") (identifier "param_6") (, ",") (identifier "uVar35") (, ",") (identifier "uVar21") (, ",") (identifier "uVar17") () ")"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 1:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;\n        uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        break;" (case "case") (number_literal "1") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" (identifier "uVar17") (= "=") (identifier "local_c8")) (; ";")) (labeled_statement "LAB_002c70ec:\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);" (statement_identifier "LAB_002c70ec") (: ":") (expression_statement "uVar19 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "uVar19 = FUN_001d7270(param_9,plVar3,uVar17)" (identifier "uVar19") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar17)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar17") () ")")))) (; ";"))) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (expression_statement "*(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;" (assignment_expression "*(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8" (pointer_expression "*(ushort *)param_10" (* "*") (cast_expression "(ushort *)param_10" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "(ushort)uVar19 << 8 | (ushort)uVar19 >> 8" (binary_expression "(ushort)uVar19 << 8" (cast_expression "(ushort)uVar19" (( "(") (type_descriptor "ushort" (type_identifier "ushort")) () ")") (identifier "uVar19")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "(ushort)uVar19 >> 8" (cast_expression "(ushort)uVar19" (( "(") (type_descriptor "ushort" (type_identifier "ushort")) () ")") (identifier "uVar19")) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "uVar16 = (uint)(0xffff < uVar19 + 0x8000);" (assignment_expression "uVar16 = (uint)(0xffff < uVar19 + 0x8000)" (identifier "uVar16") (= "=") (call_expression "(uint)(0xffff < uVar19 + 0x8000)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0xffff < uVar19 + 0x8000)" (( "(") (binary_expression "0xffff < uVar19 + 0x8000" (number_literal "0xffff") (< "<") (binary_expression "uVar19 + 0x8000" (identifier "uVar19") (+ "+") (number_literal "0x8000"))) () ")")))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);\n        if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }\n        if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;\n        lVar30 = param_8[0xe];\n        if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }\n        local_e8 = *(uint *)(param_8 + 0xc);\n        uVar34 = *(ulong *)(param_4 + 0x20);\n        if (uVar34 != 0) goto LAB_002c6275;\n        goto LAB_002c638e;" (case "case") (number_literal "2") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_2:\n        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);" (statement_identifier "switchD_002c5379_caseD_2") (: ":") (expression_statement "cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);" (assignment_expression "cVar13 = FUN_0029fc10(param_8,2,param_5,param_4)" (identifier "cVar13") (= "=") (call_expression "FUN_0029fc10(param_8,2,param_5,param_4)" (identifier "FUN_0029fc10") (argument_list "(param_8,2,param_5,param_4)" (( "(") (identifier "param_8") (, ",") (number_literal "2") (, ",") (identifier "param_5") (, ",") (identifier "param_4") () ")")))) (; ";"))) (if_statement "if (cVar13 != '\0') {\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }" (if "if") (parenthesized_expression "(cVar13 != '\0')" (( "(") (binary_expression "cVar13 != '\0'" (identifier "cVar13") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          cVar13 = *(char *)((long)param_1 + 4);\n          uVar36 = local_c8;\n          if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }\n          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);\n          if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }\n        }" ({ "{") (expression_statement "cVar13 = *(char *)((long)param_1 + 4);" (assignment_expression "cVar13 = *(char *)((long)param_1 + 4)" (identifier "cVar13") (= "=") (pointer_expression "*(char *)((long)param_1 + 4)" (* "*") (cast_expression "(char *)((long)param_1 + 4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_1 + 4)" (( "(") (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_1")) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" (identifier "uVar36") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n            uVar36 = (uint)*param_10;\n            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;\n          }" ({ "{") (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" (identifier "uVar36") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18;" (assignment_expression "uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18" (identifier "uVar36") (= "=") (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |\n                     uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" (identifier "uVar36") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" (( "(") (binary_expression "uVar36 & 0xff0000" (identifier "uVar36") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18")))) (; ";")) (} "}"))) (expression_statement "uVar36 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "uVar36 = FUN_001d7270(param_9,plVar3,uVar36)" (identifier "uVar36") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar36)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar36") () ")")))) (; ";")) (if_statement "if (cVar13 == '\0') {\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }\n          else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }" (if "if") (parenthesized_expression "(cVar13 == '\0')" (( "(") (binary_expression "cVar13 == '\0'" (identifier "cVar13") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            uVar16 = 0;\n            *(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;\n          }" ({ "{") (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n            ;" (assignment_expression "*(uint *)param_10 =\n                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" (identifier "uVar36") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" (( "(") (binary_expression "uVar36 & 0xff0000" (identifier "uVar36") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18")))) (; ";")) (} "}")) (else_clause "else {\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }" (else "else") (compound_statement "{\n            uVar16 = 0;\n            *(uint *)param_1 = uVar36;\n          }" ({ "{") (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint *)param_1 = uVar36;" (assignment_expression "*(uint *)param_1 = uVar36" (pointer_expression "*(uint *)param_1" (* "*") (cast_expression "(uint *)param_1" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (= "=") (identifier "uVar36")) (; ";")) (} "}")))) (} "}"))) (if_statement "if ((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;" (if "if") (parenthesized_expression "((param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1))))" (( "(") (binary_expression "(param_8 == (undefined8 *)0x0) ||\n           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))" (parenthesized_expression "(param_8 == (undefined8 *)0x0)" (( "(") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))" (( "(") (parenthesized_expression "((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1))" (( "(") (binary_expression "(bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)" (parenthesized_expression "(bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20))" (( "(") (comma_expression "bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)" (assignment_expression "bVar52 = *(byte *)((long)param_8 + 0x39) >> 2" (identifier "bVar52") (= "=") (binary_expression "*(byte *)((long)param_8 + 0x39) >> 2" (pointer_expression "*(byte *)((long)param_8 + 0x39)" (* "*") (cast_expression "(byte *)((long)param_8 + 0x39)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x39)" (( "(") (binary_expression "(long)param_8 + 0x39" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x39")) () ")")))) (>> ">>") (number_literal "2"))) (, ",") (binary_expression "(bVar52 & 0x3c) != 0x3c &&\n             ((bVar52 & 0x30) != 0x20)" (binary_expression "(bVar52 & 0x3c) != 0x3c" (parenthesized_expression "(bVar52 & 0x3c)" (( "(") (binary_expression "bVar52 & 0x3c" (identifier "bVar52") (& "&") (number_literal "0x3c")) () ")")) (!= "!=") (number_literal "0x3c")) (&& "&&") (parenthesized_expression "((bVar52 & 0x30) != 0x20)" (( "(") (binary_expression "(bVar52 & 0x30) != 0x20" (parenthesized_expression "(bVar52 & 0x30)" (( "(") (binary_expression "bVar52 & 0x30" (identifier "bVar52") (& "&") (number_literal "0x30")) () ")")) (!= "!=") (number_literal "0x20")) () ")")))) () ")")) (|| "||") (parenthesized_expression "(*(int *)((long)param_8 + 0x5c) != 1)" (( "(") (binary_expression "*(int *)((long)param_8 + 0x5c) != 1" (pointer_expression "*(int *)((long)param_8 + 0x5c)" (* "*") (cast_expression "(int *)((long)param_8 + 0x5c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x5c)" (( "(") (binary_expression "(long)param_8 + 0x5c" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x5c")) () ")")))) (!= "!=") (number_literal "1")) () ")"))) () ")")) () ")"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar30 = param_8[0xe];" (assignment_expression "lVar30 = param_8[0xe]" (identifier "lVar30") (= "=") (subscript_expression "param_8[0xe]" (identifier "param_8") ([ "[") (number_literal "0xe") (] "]"))) (; ";")) (if_statement "if (lVar30 != 0) {\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }\n          local_68 = FUN_00298450(lVar30,lVar30 + 8);\n          param_9 = (uint *)&local_78;\n        }" ({ "{") (if_statement "if (*(char *)(param_8 + 9) == '\0') {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }" (if "if") (parenthesized_expression "(*(char *)(param_8 + 9) == '\0')" (( "(") (binary_expression "*(char *)(param_8 + 9) == '\0'" (pointer_expression "*(char *)(param_8 + 9)" (* "*") (cast_expression "(char *)(param_8 + 9)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 9)" (( "(") (binary_expression "param_8 + 9" (identifier "param_8") (+ "+") (number_literal "9")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");\n          }" ({ "{") (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x2e46,"relocate")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x2e46") (, ",") (string_literal ""relocate"" (" """) (string_content "relocate") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "local_68 = FUN_00298450(lVar30,lVar30 + 8);" (assignment_expression "local_68 = FUN_00298450(lVar30,lVar30 + 8)" (identifier "local_68") (= "=") (call_expression "FUN_00298450(lVar30,lVar30 + 8)" (identifier "FUN_00298450") (argument_list "(lVar30,lVar30 + 8)" (( "(") (identifier "lVar30") (, ",") (binary_expression "lVar30 + 8" (identifier "lVar30") (+ "+") (number_literal "8")) () ")")))) (; ";")) (expression_statement "param_9 = (uint *)&local_78;" (assignment_expression "param_9 = (uint *)&local_78" (identifier "param_9") (= "=") (cast_expression "(uint *)&local_78" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_78" (& "&") (identifier "local_78")))) (; ";")) (} "}"))) (expression_statement "local_e8 = *(uint *)(param_8 + 0xc);" (assignment_expression "local_e8 = *(uint *)(param_8 + 0xc)" (identifier "local_e8") (= "=") (pointer_expression "*(uint *)(param_8 + 0xc)" (* "*") (cast_expression "(uint *)(param_8 + 0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 0xc)" (( "(") (binary_expression "param_8 + 0xc" (identifier "param_8") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (expression_statement "uVar34 = *(ulong *)(param_4 + 0x20);" (assignment_expression "uVar34 = *(ulong *)(param_4 + 0x20)" (identifier "uVar34") (= "=") (pointer_expression "*(ulong *)(param_4 + 0x20)" (* "*") (cast_expression "(ulong *)(param_4 + 0x20)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (if_statement "if (uVar34 != 0) goto LAB_002c6275;" (if "if") (parenthesized_expression "(uVar34 != 0)" (( "(") (binary_expression "uVar34 != 0" (identifier "uVar34") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c6275;" (goto "goto") (statement_identifier "LAB_002c6275") (; ";"))) (goto_statement "goto LAB_002c638e;" (goto "goto") (statement_identifier "LAB_002c638e") (; ";"))) (case_statement "case 3:\nswitchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");" (case "case") (number_literal "3") (: ":") (labeled_statement "switchD_002c4f87_caseD_3:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");" (statement_identifier "switchD_002c4f87_caseD_3") (: ":") (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x2e62,"relocate")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x2e62") (, ",") (string_literal ""relocate"" (" """) (string_content "relocate") (" """)) () ")"))) (; ";")))) (case_statement "case 4:" (case "case") (number_literal "4") (: ":")) (case_statement "case 100:" (case "case") (number_literal "100") (: ":")) (case_statement "case 0x85:\n        bVar48 = false;\n        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        goto LAB_002c7644;" (case "case") (number_literal "0x85") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (expression_statement "bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);" (assignment_expression "bVar51 = (bool)((!bVar49 || !bVar50) & local_e3)" (identifier "bVar51") (= "=") (cast_expression "(bool)((!bVar49 || !bVar50) & local_e3)" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (parenthesized_expression "((!bVar49 || !bVar50) & local_e3)" (( "(") (binary_expression "(!bVar49 || !bVar50) & local_e3" (parenthesized_expression "(!bVar49 || !bVar50)" (( "(") (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" (! "!") (identifier "bVar49")) (|| "||") (unary_expression "!bVar50" (! "!") (identifier "bVar50"))) () ")")) (& "&") (identifier "local_e3")) () ")")))) (; ";")) (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" (identifier "uVar36") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;" (assignment_expression "uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (identifier "uVar45") (= "=") (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" (identifier "uVar36") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" (( "(") (binary_expression "uVar36 & 0xff0000" (identifier "uVar36") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18")))) (; ";")) (goto_statement "goto LAB_002c7644;" (goto "goto") (statement_identifier "LAB_002c7644") (; ";"))) (case_statement "case 5:" (case "case") (number_literal "5") (: ":")) (case_statement "case 0x68:" (case "case") (number_literal "0x68") (: ":")) (case_statement "case 0x86:\n        goto switchD_002c4f87_caseD_5;" (case "case") (number_literal "0x86") (: ":") (goto_statement "goto switchD_002c4f87_caseD_5;" (goto "goto") (statement_identifier "switchD_002c4f87_caseD_5") (; ";"))) (case_statement "case 6:" (case "case") (number_literal "6") (: ":")) (case_statement "case 0x69:" (case "case") (number_literal "0x69") (: ":")) (case_statement "case 0x87:" (case "case") (number_literal "0x87") (: ":")) (case_statement "case 0x9d:\n        bVar48 = false;\n        local_130 = (uint)*param_10;\n        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;\n        uVar19 = local_c8;\nLAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }\n        if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;\n        break;" (case "case") (number_literal "0x9d") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (expression_statement "local_130 = (uint)*param_10;" (assignment_expression "local_130 = (uint)*param_10" (identifier "local_130") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;" (assignment_expression "uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8" (identifier "uVar45") (= "=") (binary_expression "local_130 >> 0x18 | (local_130 & 0xff0000) >> 8" (binary_expression "local_130 >> 0x18" (identifier "local_130") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(local_130 & 0xff0000) >> 8" (parenthesized_expression "(local_130 & 0xff0000)" (( "(") (binary_expression "local_130 & 0xff0000" (identifier "local_130") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" (identifier "uVar19") (= "=") (identifier "local_c8")) (; ";")) (labeled_statement "LAB_002c7171:\n        if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }" (statement_identifier "LAB_002c7171") (: ":") (if_statement "if (param_3 == 9) {\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }" (if "if") (parenthesized_expression "(param_3 == 9)" (( "(") (binary_expression "param_3 == 9" (identifier "param_3") (== "==") (number_literal "9")) () ")")) (compound_statement "{\n          local_108 = DAT_0067db40;\n          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }\n          local_108 = DAT_0067db20;\n          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }\n        }" ({ "{") (expression_statement "local_108 = DAT_0067db40;" (assignment_expression "local_108 = DAT_0067db40" (identifier "local_108") (= "=") (identifier "DAT_0067db40")) (; ";")) (if_statement "if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }" (if "if") (parenthesized_expression "((undefined8 **)DAT_0067db40 != &DAT_0067db40)" (( "(") (binary_expression "(undefined8 **)DAT_0067db40 != &DAT_0067db40" (cast_expression "(undefined8 **)DAT_0067db40" (( "(") (type_descriptor "undefined8 **" (type_identifier "undefined8") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "DAT_0067db40")) (!= "!=") (pointer_expression "&DAT_0067db40" (& "&") (identifier "DAT_0067db40"))) () ")")) (compound_statement "{\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);\n          }" ({ "{") (do_statement "do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db40);" (do "do") (compound_statement "{\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }\n            }" ({ "{") (if_statement "if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }" (if "if") (parenthesized_expression "(uVar7 == *(uint *)(local_108 + 6))" (( "(") (binary_expression "uVar7 == *(uint *)(local_108 + 6)" (identifier "uVar7") (== "==") (pointer_expression "*(uint *)(local_108 + 6)" (* "*") (cast_expression "(uint *)(local_108 + 6)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_108 + 6)" (( "(") (binary_expression "local_108 + 6" (identifier "local_108") (+ "+") (number_literal "6")) () ")"))))) () ")")) (compound_statement "{\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7bc0;\n                uVar21 = local_108[2];\n                uVar22 = local_108[4];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar43 = local_108[3];\n                uVar1 = *(undefined4 *)(local_108 + 7);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db50 = _DAT_0067db50 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }" ({ "{") (expression_statement "uVar18 = *(undefined4 *)((long)local_108 + 0x2c);" (assignment_expression "uVar18 = *(undefined4 *)((long)local_108 + 0x2c)" (identifier "uVar18") (= "=") (pointer_expression "*(undefined4 *)((long)local_108 + 0x2c)" (* "*") (cast_expression "(undefined4 *)((long)local_108 + 0x2c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)local_108 + 0x2c)" (( "(") (binary_expression "(long)local_108 + 0x2c" (cast_expression "(long)local_108" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_108")) (+ "+") (number_literal "0x2c")) () ")"))))) (; ";")) (expression_statement "cVar14 = FUN_0028cc00(uVar18,uVar17);" (assignment_expression "cVar14 = FUN_0028cc00(uVar18,uVar17)" (identifier "cVar14") (= "=") (call_expression "FUN_0028cc00(uVar18,uVar17)" (identifier "FUN_0028cc00") (argument_list "(uVar18,uVar17)" (( "(") (identifier "uVar18") (, ",") (identifier "uVar17") () ")")))) (; ";")) (if_statement "if (cVar14 == '\0') goto LAB_002c7bc0;" (if "if") (parenthesized_expression "(cVar14 == '\0')" (( "(") (binary_expression "cVar14 == '\0'" (identifier "cVar14") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_002c7bc0;" (goto "goto") (statement_identifier "LAB_002c7bc0") (; ";"))) (expression_statement "uVar21 = local_108[2];" (assignment_expression "uVar21 = local_108[2]" (identifier "uVar21") (= "=") (subscript_expression "local_108[2]" (identifier "local_108") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "uVar22 = local_108[4];" (assignment_expression "uVar22 = local_108[4]" (identifier "uVar22") (= "=") (subscript_expression "local_108[4]" (identifier "local_108") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "uVar2 = *(undefined4 *)(local_108 + 5);" (assignment_expression "uVar2 = *(undefined4 *)(local_108 + 5)" (identifier "uVar2") (= "=") (pointer_expression "*(undefined4 *)(local_108 + 5)" (* "*") (cast_expression "(undefined4 *)(local_108 + 5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_108 + 5)" (( "(") (binary_expression "local_108 + 5" (identifier "local_108") (+ "+") (number_literal "5")) () ")"))))) (; ";")) (expression_statement "uVar43 = local_108[3];" (assignment_expression "uVar43 = local_108[3]" (identifier "uVar43") (= "=") (subscript_expression "local_108[3]" (identifier "local_108") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "uVar1 = *(undefined4 *)(local_108 + 7);" (assignment_expression "uVar1 = *(undefined4 *)(local_108 + 7)" (identifier "uVar1") (= "=") (pointer_expression "*(undefined4 *)(local_108 + 7)" (* "*") (cast_expression "(undefined4 *)(local_108 + 7)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_108 + 7)" (( "(") (binary_expression "local_108 + 7" (identifier "local_108") (+ "+") (number_literal "7")) () ")"))))) (; ";")) (expression_statement "FUN_00296ff0(uVar21,uVar18);" (call_expression "FUN_00296ff0(uVar21,uVar18)" (identifier "FUN_00296ff0") (argument_list "(uVar21,uVar18)" (( "(") (identifier "uVar21") (, ",") (identifier "uVar18") () ")"))) (; ";")) (expression_statement "uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);" (assignment_expression "uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1)" (identifier "uVar16") (= "=") (call_expression "FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1)" (identifier "FUN_002a8180") (argument_list "(uVar21,uVar43,uVar22,uVar2,uVar1)" (( "(") (identifier "uVar21") (, ",") (identifier "uVar43") (, ",") (identifier "uVar22") (, ",") (identifier "uVar2") (, ",") (identifier "uVar1") () ")")))) (; ";")) (expression_statement "FUN_00293050(uVar21,uVar18,0);" (call_expression "FUN_00293050(uVar21,uVar18,0)" (identifier "FUN_00293050") (argument_list "(uVar21,uVar18,0)" (( "(") (identifier "uVar21") (, ",") (identifier "uVar18") (, ",") (number_literal "0") () ")"))) (; ";")) (if_statement "if (uVar16 == 1) goto LAB_002c5940;" (if "if") (parenthesized_expression "(uVar16 == 1)" (( "(") (binary_expression "uVar16 == 1" (identifier "uVar16") (== "==") (number_literal "1")) () ")")) (goto_statement "goto LAB_002c5940;" (goto "goto") (statement_identifier "LAB_002c5940") (; ";"))) (expression_statement "puVar40 = (undefined8 *)*local_108;" (assignment_expression "puVar40 = (undefined8 *)*local_108" (identifier "puVar40") (= "=") (cast_expression "(undefined8 *)*local_108" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*local_108" (* "*") (identifier "local_108")))) (; ";")) (expression_statement "_DAT_0067db50 = _DAT_0067db50 + -1;" (assignment_expression "_DAT_0067db50 = _DAT_0067db50 + -1" (identifier "_DAT_0067db50") (= "=") (binary_expression "_DAT_0067db50 + -1" (identifier "_DAT_0067db50") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "FUN_004a1200(local_108);" (call_expression "FUN_004a1200(local_108)" (identifier "FUN_004a1200") (argument_list "(local_108)" (( "(") (identifier "local_108") () ")"))) (; ";")) (expression_statement "FUN_0049e340(local_108);" (call_expression "FUN_0049e340(local_108)" (identifier "FUN_0049e340") (argument_list "(local_108)" (( "(") (identifier "local_108") () ")"))) (; ";")) (expression_statement "local_108 = puVar40;" (assignment_expression "local_108 = puVar40" (identifier "local_108") (= "=") (identifier "puVar40")) (; ";")) (} "}")) (else_clause "else {\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }" (else "else") (compound_statement "{\nLAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;\n              }" ({ "{") (labeled_statement "LAB_002c7bc0:\n                local_108 = (undefined8 *)*local_108;" (statement_identifier "LAB_002c7bc0") (: ":") (expression_statement "local_108 = (undefined8 *)*local_108;" (assignment_expression "local_108 = (undefined8 *)*local_108" (identifier "local_108") (= "=") (cast_expression "(undefined8 *)*local_108" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*local_108" (* "*") (identifier "local_108")))) (; ";"))) (} "}")))) (} "}")) (while "while") (parenthesized_expression "((undefined8 **)local_108 != &DAT_0067db40)" (( "(") (binary_expression "(undefined8 **)local_108 != &DAT_0067db40" (cast_expression "(undefined8 **)local_108" (( "(") (type_descriptor "undefined8 **" (type_identifier "undefined8") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "local_108")) (!= "!=") (pointer_expression "&DAT_0067db40" (& "&") (identifier "DAT_0067db40"))) () ")")) (; ";")) (} "}"))) (expression_statement "local_108 = DAT_0067db20;" (assignment_expression "local_108 = DAT_0067db20" (identifier "local_108") (= "=") (identifier "DAT_0067db20")) (; ";")) (if_statement "if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }" (if "if") (parenthesized_expression "((undefined8 **)DAT_0067db20 != &DAT_0067db20)" (( "(") (binary_expression "(undefined8 **)DAT_0067db20 != &DAT_0067db20" (cast_expression "(undefined8 **)DAT_0067db20" (( "(") (type_descriptor "undefined8 **" (type_identifier "undefined8") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "DAT_0067db20")) (!= "!=") (pointer_expression "&DAT_0067db20" (& "&") (identifier "DAT_0067db20"))) () ")")) (compound_statement "{\n            do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);\n          }" ({ "{") (do_statement "do {\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            } while ((undefined8 **)local_108 != &DAT_0067db20);" (do "do") (compound_statement "{\n              if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }\n            }" ({ "{") (if_statement "if (uVar7 == *(uint *)(local_108 + 6)) {\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }\n              else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }" (if "if") (parenthesized_expression "(uVar7 == *(uint *)(local_108 + 6))" (( "(") (binary_expression "uVar7 == *(uint *)(local_108 + 6)" (identifier "uVar7") (== "==") (pointer_expression "*(uint *)(local_108 + 6)" (* "*") (cast_expression "(uint *)(local_108 + 6)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_108 + 6)" (( "(") (binary_expression "local_108 + 6" (identifier "local_108") (+ "+") (number_literal "6")) () ")"))))) () ")")) (compound_statement "{\n                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);\n                cVar14 = FUN_0028cc00(uVar18,uVar17);\n                if (cVar14 == '\0') goto LAB_002c7d70;\n                uVar21 = local_108[2];\n                uVar2 = *(undefined4 *)(local_108 + 5);\n                uVar22 = local_108[3];\n                uVar43 = local_108[4];\n                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);\n                FUN_00296ff0(uVar21,uVar18);\n                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);\n                FUN_00293050(uVar21,uVar18,0);\n                if (uVar16 == 1) goto LAB_002c5940;\n                puVar40 = (undefined8 *)*local_108;\n                _DAT_0067db30 = _DAT_0067db30 + -1;\n                FUN_004a1200(local_108);\n                FUN_0049e340(local_108);\n                local_108 = puVar40;\n              }" ({ "{") (expression_statement "uVar18 = *(undefined4 *)((long)local_108 + 0x2c);" (assignment_expression "uVar18 = *(undefined4 *)((long)local_108 + 0x2c)" (identifier "uVar18") (= "=") (pointer_expression "*(undefined4 *)((long)local_108 + 0x2c)" (* "*") (cast_expression "(undefined4 *)((long)local_108 + 0x2c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)local_108 + 0x2c)" (( "(") (binary_expression "(long)local_108 + 0x2c" (cast_expression "(long)local_108" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_108")) (+ "+") (number_literal "0x2c")) () ")"))))) (; ";")) (expression_statement "cVar14 = FUN_0028cc00(uVar18,uVar17);" (assignment_expression "cVar14 = FUN_0028cc00(uVar18,uVar17)" (identifier "cVar14") (= "=") (call_expression "FUN_0028cc00(uVar18,uVar17)" (identifier "FUN_0028cc00") (argument_list "(uVar18,uVar17)" (( "(") (identifier "uVar18") (, ",") (identifier "uVar17") () ")")))) (; ";")) (if_statement "if (cVar14 == '\0') goto LAB_002c7d70;" (if "if") (parenthesized_expression "(cVar14 == '\0')" (( "(") (binary_expression "cVar14 == '\0'" (identifier "cVar14") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_002c7d70;" (goto "goto") (statement_identifier "LAB_002c7d70") (; ";"))) (expression_statement "uVar21 = local_108[2];" (assignment_expression "uVar21 = local_108[2]" (identifier "uVar21") (= "=") (subscript_expression "local_108[2]" (identifier "local_108") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "uVar2 = *(undefined4 *)(local_108 + 5);" (assignment_expression "uVar2 = *(undefined4 *)(local_108 + 5)" (identifier "uVar2") (= "=") (pointer_expression "*(undefined4 *)(local_108 + 5)" (* "*") (cast_expression "(undefined4 *)(local_108 + 5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_108 + 5)" (( "(") (binary_expression "local_108 + 5" (identifier "local_108") (+ "+") (number_literal "5")) () ")"))))) (; ";")) (expression_statement "uVar22 = local_108[3];" (assignment_expression "uVar22 = local_108[3]" (identifier "uVar22") (= "=") (subscript_expression "local_108[3]" (identifier "local_108") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "uVar43 = local_108[4];" (assignment_expression "uVar43 = local_108[4]" (identifier "uVar43") (= "=") (subscript_expression "local_108[4]" (identifier "local_108") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);" (assignment_expression "uVar34 = (ulong)*(byte *)((long)local_108 + 0x34)" (identifier "uVar34") (= "=") (binary_expression "(ulong)*(byte *)((long)local_108 + 0x34)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (cast_expression "(byte *)((long)local_108 + 0x34)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)local_108 + 0x34)" (( "(") (binary_expression "(long)local_108 + 0x34" (cast_expression "(long)local_108" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_108")) (+ "+") (number_literal "0x34")) () ")"))))) (; ";")) (expression_statement "FUN_00296ff0(uVar21,uVar18);" (call_expression "FUN_00296ff0(uVar21,uVar18)" (identifier "FUN_00296ff0") (argument_list "(uVar21,uVar18)" (( "(") (identifier "uVar21") (, ",") (identifier "uVar18") () ")"))) (; ";")) (expression_statement "uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1);" (assignment_expression "uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1)" (identifier "uVar16") (= "=") (call_expression "FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1)" (identifier "FUN_002c48c0") (argument_list "(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36\n                                      ,param_1)" (( "(") (identifier "uVar21") (, ",") (identifier "uVar22") (, ",") (identifier "uVar43") (, ",") (identifier "uVar2") (, ",") (binary_expression "uVar34 & 0xff" (identifier "uVar34") (& "&") (number_literal "0xff")) (, ",") (identifier "uVar19") (, ",") (identifier "param_4") (, ",") (identifier "uVar36") (, ",") (identifier "param_1") () ")")))) (; ";")) (expression_statement "FUN_00293050(uVar21,uVar18,0);" (call_expression "FUN_00293050(uVar21,uVar18,0)" (identifier "FUN_00293050") (argument_list "(uVar21,uVar18,0)" (( "(") (identifier "uVar21") (, ",") (identifier "uVar18") (, ",") (number_literal "0") () ")"))) (; ";")) (if_statement "if (uVar16 == 1) goto LAB_002c5940;" (if "if") (parenthesized_expression "(uVar16 == 1)" (( "(") (binary_expression "uVar16 == 1" (identifier "uVar16") (== "==") (number_literal "1")) () ")")) (goto_statement "goto LAB_002c5940;" (goto "goto") (statement_identifier "LAB_002c5940") (; ";"))) (expression_statement "puVar40 = (undefined8 *)*local_108;" (assignment_expression "puVar40 = (undefined8 *)*local_108" (identifier "puVar40") (= "=") (cast_expression "(undefined8 *)*local_108" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*local_108" (* "*") (identifier "local_108")))) (; ";")) (expression_statement "_DAT_0067db30 = _DAT_0067db30 + -1;" (assignment_expression "_DAT_0067db30 = _DAT_0067db30 + -1" (identifier "_DAT_0067db30") (= "=") (binary_expression "_DAT_0067db30 + -1" (identifier "_DAT_0067db30") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "FUN_004a1200(local_108);" (call_expression "FUN_004a1200(local_108)" (identifier "FUN_004a1200") (argument_list "(local_108)" (( "(") (identifier "local_108") () ")"))) (; ";")) (expression_statement "FUN_0049e340(local_108);" (call_expression "FUN_0049e340(local_108)" (identifier "FUN_0049e340") (argument_list "(local_108)" (( "(") (identifier "local_108") () ")"))) (; ";")) (expression_statement "local_108 = puVar40;" (assignment_expression "local_108 = puVar40" (identifier "local_108") (= "=") (identifier "puVar40")) (; ";")) (} "}")) (else_clause "else {\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }" (else "else") (compound_statement "{\nLAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;\n              }" ({ "{") (labeled_statement "LAB_002c7d70:\n                local_108 = (undefined8 *)*local_108;" (statement_identifier "LAB_002c7d70") (: ":") (expression_statement "local_108 = (undefined8 *)*local_108;" (assignment_expression "local_108 = (undefined8 *)*local_108" (identifier "local_108") (= "=") (cast_expression "(undefined8 *)*local_108" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*local_108" (* "*") (identifier "local_108")))) (; ";"))) (} "}")))) (} "}")) (while "while") (parenthesized_expression "((undefined8 **)local_108 != &DAT_0067db20)" (( "(") (binary_expression "(undefined8 **)local_108 != &DAT_0067db20" (cast_expression "(undefined8 **)local_108" (( "(") (type_descriptor "undefined8 **" (type_identifier "undefined8") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "local_108")) (!= "!=") (pointer_expression "&DAT_0067db20" (& "&") (identifier "DAT_0067db20"))) () ")")) (; ";")) (} "}"))) (} "}")))) (if_statement "if (cVar12 == '\0') {\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }\n        else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }" (if "if") (parenthesized_expression "(cVar12 == '\0')" (( "(") (binary_expression "cVar12 == '\0'" (identifier "cVar12") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);\n        }" ({ "{") (expression_statement "uVar19 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "uVar19 = FUN_001d7270(param_9,plVar3,uVar19)" (identifier "uVar19") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar19)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar19") () ")")))) (; ";")) (} "}")) (else_clause "else {\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }" (else "else") (compound_statement "{\n          lVar30 = *(long *)(param_4 + 0x28);\n          if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }\n          uVar19 = iVar38 + uVar19;\n        }" ({ "{") (expression_statement "lVar30 = *(long *)(param_4 + 0x28);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x28)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x28)" (* "*") (cast_expression "(long *)(param_4 + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x28)" (( "(") (binary_expression "param_4 + 0x28" (identifier "param_4") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (if_statement "if (uVar17 == 0x69) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }\n          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" (if "if") (parenthesized_expression "(uVar17 == 0x69)" (( "(") (binary_expression "uVar17 == 0x69" (identifier "uVar17") (== "==") (number_literal "0x69")) () ")")) (compound_statement "{\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = iVar38 - (param_11 & 0xfffffffc);\n          }" ({ "{") (if_statement "if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              iVar38 = 0;\n            }" ({ "{") (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" (identifier "iVar38") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" (else "else") (compound_statement "{\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" ({ "{") (expression_statement "iVar38 = *(int *)(lVar30 + 0x40);" (assignment_expression "iVar38 = *(int *)(lVar30 + 0x40)" (identifier "iVar38") (= "=") (pointer_expression "*(int *)(lVar30 + 0x40)" (* "*") (cast_expression "(int *)(lVar30 + 0x40)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x40)" (( "(") (binary_expression "lVar30 + 0x40" (identifier "lVar30") (+ "+") (number_literal "0x40")) () ")"))))) (; ";")) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" (if "if") (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" (( "(") (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" (( "(") (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (( "(") (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" (* "*") (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0xd0")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(plVar3[0x6e] != 0)" (( "(") (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" ({ "{") (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" (identifier "iVar38") (= "=") (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" (identifier "iVar38") (+ "+") (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" (* "*") (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3[0x6e] + 0x10c)" (( "(") (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]")) (+ "+") (number_literal "0x10c")) () ")")))))) (; ";")) (} "}"))) (} "}")))) (expression_statement "iVar38 = iVar38 - (param_11 & 0xfffffffc);" (assignment_expression "iVar38 = iVar38 - (param_11 & 0xfffffffc)" (identifier "iVar38") (= "=") (binary_expression "iVar38 - (param_11 & 0xfffffffc)" (identifier "iVar38") (- "-") (parenthesized_expression "(param_11 & 0xfffffffc)" (( "(") (binary_expression "param_11 & 0xfffffffc" (identifier "param_11") (& "&") (number_literal "0xfffffffc")) () ")")))) (; ";")) (} "}")) (else_clause "else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" (else "else") (if_statement "if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }\n          else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" (if "if") (parenthesized_expression "((uVar17 == 0x87) || (uVar17 == 0x9d))" (( "(") (binary_expression "(uVar17 == 0x87) || (uVar17 == 0x9d)" (parenthesized_expression "(uVar17 == 0x87)" (( "(") (binary_expression "uVar17 == 0x87" (identifier "uVar17") (== "==") (number_literal "0x87")) () ")")) (|| "||") (parenthesized_expression "(uVar17 == 0x9d)" (( "(") (binary_expression "uVar17 == 0x9d" (identifier "uVar17") (== "==") (number_literal "0x9d")) () ")"))) () ")")) (compound_statement "{\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 3;\n          }" ({ "{") (if_statement "if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              iVar38 = 0;\n            }" ({ "{") (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" (identifier "iVar38") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" (else "else") (compound_statement "{\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" ({ "{") (expression_statement "iVar38 = *(int *)(lVar30 + 0x40);" (assignment_expression "iVar38 = *(int *)(lVar30 + 0x40)" (identifier "iVar38") (= "=") (pointer_expression "*(int *)(lVar30 + 0x40)" (* "*") (cast_expression "(int *)(lVar30 + 0x40)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x40)" (( "(") (binary_expression "lVar30 + 0x40" (identifier "lVar30") (+ "+") (number_literal "0x40")) () ")"))))) (; ";")) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" (if "if") (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" (( "(") (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" (( "(") (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (( "(") (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" (* "*") (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0xd0")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(plVar3[0x6e] != 0)" (( "(") (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" ({ "{") (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" (identifier "iVar38") (= "=") (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" (identifier "iVar38") (+ "+") (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" (* "*") (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3[0x6e] + 0x10c)" (( "(") (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]")) (+ "+") (number_literal "0x10c")) () ")")))))) (; ";")) (} "}"))) (} "}")))) (expression_statement "iVar38 = (iVar38 - param_11) + 3;" (assignment_expression "iVar38 = (iVar38 - param_11) + 3" (identifier "iVar38") (= "=") (binary_expression "(iVar38 - param_11) + 3" (parenthesized_expression "(iVar38 - param_11)" (( "(") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) () ")")) (+ "+") (number_literal "3"))) (; ";")) (} "}")) (else_clause "else {\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" (else "else") (compound_statement "{\n            if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }\n            iVar38 = (iVar38 - param_11) + 4;\n          }" ({ "{") (if_statement "if (lVar30 == 0) {\n              iVar38 = 0;\n            }\n            else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              iVar38 = 0;\n            }" ({ "{") (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" (identifier "iVar38") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" (else "else") (compound_statement "{\n              iVar38 = *(int *)(lVar30 + 0x40);\n              if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }\n            }" ({ "{") (expression_statement "iVar38 = *(int *)(lVar30 + 0x40);" (assignment_expression "iVar38 = *(int *)(lVar30 + 0x40)" (identifier "iVar38") (= "=") (pointer_expression "*(int *)(lVar30 + 0x40)" (* "*") (cast_expression "(int *)(lVar30 + 0x40)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x40)" (( "(") (binary_expression "lVar30 + 0x40" (identifier "lVar30") (+ "+") (number_literal "0x40")) () ")"))))) (; ";")) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" (if "if") (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" (( "(") (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" (( "(") (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (( "(") (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" (* "*") (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0xd0")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(plVar3[0x6e] != 0)" (( "(") (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n              }" ({ "{") (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" (identifier "iVar38") (= "=") (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" (identifier "iVar38") (+ "+") (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" (* "*") (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3[0x6e] + 0x10c)" (( "(") (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]")) (+ "+") (number_literal "0x10c")) () ")")))))) (; ";")) (} "}"))) (} "}")))) (expression_statement "iVar38 = (iVar38 - param_11) + 4;" (assignment_expression "iVar38 = (iVar38 - param_11) + 4" (identifier "iVar38") (= "=") (binary_expression "(iVar38 - param_11) + 4" (parenthesized_expression "(iVar38 - param_11)" (( "(") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) () ")")) (+ "+") (number_literal "4"))) (; ";")) (} "}")))))) (expression_statement "uVar19 = iVar38 + uVar19;" (assignment_expression "uVar19 = iVar38 + uVar19" (identifier "uVar19") (= "=") (binary_expression "iVar38 + uVar19" (identifier "iVar38") (+ "+") (identifier "uVar19"))) (; ";")) (} "}")))) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;" (assignment_expression "*(uint *)param_10 =\n             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "(((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130" (parenthesized_expression "(((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18)" (( "(") (binary_expression "((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18" (binary_expression "((uVar19 ^ uVar45) & 0xff00) << 8" (parenthesized_expression "((uVar19 ^ uVar45) & 0xff00)" (( "(") (binary_expression "(uVar19 ^ uVar45) & 0xff00" (parenthesized_expression "(uVar19 ^ uVar45)" (( "(") (binary_expression "uVar19 ^ uVar45" (identifier "uVar19") (^ "^") (identifier "uVar45")) () ")")) (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "(uVar19 ^ uVar45) << 0x18" (parenthesized_expression "(uVar19 ^ uVar45)" (( "(") (binary_expression "uVar19 ^ uVar45" (identifier "uVar19") (^ "^") (identifier "uVar45")) () ")")) (<< "<<") (number_literal "0x18"))) () ")")) (^ "^") (identifier "local_130"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 7:" (case "case") (number_literal "7") (: ":")) (case_statement "case 8:" (case "case") (number_literal "8") (: ":")) (case_statement "case 0x65:" (case "case") (number_literal "0x65") (: ":")) (case_statement "case 0x88:" (case "case") (number_literal "0x88") (: ":")) (case_statement "case 0x89:" (case "case") (number_literal "0x89") (: ":")) (case_statement "case 0xac:\n        lVar30 = *(long *)(param_4 + 0x28);\n        if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }\n        bVar48 = false;\n        iVar38 = 0;\n        uVar36 = (uint)*param_10;\n        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = local_c8;\nLAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar20 - iVar38;\n        if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }\n        uVar36 = (uVar19 ^ uVar45) & 0xffff;\n        if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }\n        uVar36 = uVar45 ^ uVar36;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        *(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }\n        goto LAB_002c5c87;" (case "case") (number_literal "0xac") (: ":") (expression_statement "lVar30 = *(long *)(param_4 + 0x28);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x28)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x28)" (* "*") (cast_expression "(long *)(param_4 + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x28)" (( "(") (binary_expression "param_4 + 0x28" (identifier "param_4") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (if_statement "if (lVar30 != 0) {\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          bVar48 = false;\nLAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n          goto LAB_002c7297;\n        }" ({ "{") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_002c7253:\n          iVar38 = *(int *)(lVar30 + 0x40);" (statement_identifier "LAB_002c7253") (: ":") (expression_statement "iVar38 = *(int *)(lVar30 + 0x40);" (assignment_expression "iVar38 = *(int *)(lVar30 + 0x40)" (identifier "iVar38") (= "=") (pointer_expression "*(int *)(lVar30 + 0x40)" (* "*") (cast_expression "(int *)(lVar30 + 0x40)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x40)" (( "(") (binary_expression "lVar30 + 0x40" (identifier "lVar30") (+ "+") (number_literal "0x40")) () ")"))))) (; ";"))) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" (if "if") (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" (( "(") (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" (( "(") (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (( "(") (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" (* "*") (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0xd0")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(plVar3[0x6e] != 0)" (( "(") (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" ({ "{") (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" (identifier "iVar38") (= "=") (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" (identifier "iVar38") (+ "+") (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" (* "*") (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3[0x6e] + 0x10c)" (( "(") (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]")) (+ "+") (number_literal "0x10c")) () ")")))))) (; ";")) (} "}"))) (goto_statement "goto LAB_002c7297;" (goto "goto") (statement_identifier "LAB_002c7297") (; ";")) (} "}"))) (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" (identifier "iVar38") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" (identifier "uVar36") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;" (assignment_expression "uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (identifier "uVar45") (= "=") (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" (identifier "uVar36") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" (( "(") (binary_expression "uVar36 & 0xff0000" (identifier "uVar36") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" (identifier "uVar36") (= "=") (identifier "local_c8")) (; ";")) (labeled_statement "LAB_002c72d4:\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);" (statement_identifier "LAB_002c72d4") (: ":") (expression_statement "iVar20 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "iVar20 = FUN_001d7270(param_9,plVar3,uVar36)" (identifier "iVar20") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar36)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar36") () ")")))) (; ";"))) (expression_statement "uVar19 = iVar20 - iVar38;" (assignment_expression "uVar19 = iVar20 - iVar38" (identifier "uVar19") (= "=") (binary_expression "iVar20 - iVar38" (identifier "iVar20") (- "-") (identifier "iVar38"))) (; ";")) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }" (if "if") (parenthesized_expression "(param_8 == (undefined8 *)0x0)" (( "(") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          uVar19 = uVar19 + (int)plVar3[0x6d];\n        }" ({ "{") (expression_statement "uVar19 = uVar19 + (int)plVar3[0x6d];" (assignment_expression "uVar19 = uVar19 + (int)plVar3[0x6d]" (identifier "uVar19") (= "=") (binary_expression "uVar19 + (int)plVar3[0x6d]" (identifier "uVar19") (+ "+") (cast_expression "(int)plVar3[0x6d]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "plVar3[0x6d]" (identifier "plVar3") ([ "[") (number_literal "0x6d") (] "]"))))) (; ";")) (} "}"))) (expression_statement "uVar36 = (uVar19 ^ uVar45) & 0xffff;" (assignment_expression "uVar36 = (uVar19 ^ uVar45) & 0xffff" (identifier "uVar36") (= "=") (binary_expression "(uVar19 ^ uVar45) & 0xffff" (parenthesized_expression "(uVar19 ^ uVar45)" (( "(") (binary_expression "uVar19 ^ uVar45" (identifier "uVar19") (^ "^") (identifier "uVar45")) () ")")) (& "&") (number_literal "0xffff"))) (; ";")) (if_statement "if (uVar17 == 0xac) {\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }" (if "if") (parenthesized_expression "(uVar17 == 0xac)" (( "(") (binary_expression "uVar17 == 0xac" (identifier "uVar17") (== "==") (number_literal "0xac")) () ")")) (compound_statement "{\n          uVar36 = (uVar19 ^ uVar45) & 0x7f;\n        }" ({ "{") (expression_statement "uVar36 = (uVar19 ^ uVar45) & 0x7f;" (assignment_expression "uVar36 = (uVar19 ^ uVar45) & 0x7f" (identifier "uVar36") (= "=") (binary_expression "(uVar19 ^ uVar45) & 0x7f" (parenthesized_expression "(uVar19 ^ uVar45)" (( "(") (binary_expression "uVar19 ^ uVar45" (identifier "uVar19") (^ "^") (identifier "uVar45")) () ")")) (& "&") (number_literal "0x7f"))) (; ";")) (} "}"))) (expression_statement "uVar36 = uVar45 ^ uVar36;" (assignment_expression "uVar36 = uVar45 ^ uVar36" (identifier "uVar36") (= "=") (binary_expression "uVar45 ^ uVar36" (identifier "uVar45") (^ "^") (identifier "uVar36"))) (; ";")) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (expression_statement "*(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;" (assignment_expression "*(uint *)param_10 =\n             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar45 >> 0x18" (identifier "uVar45") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" (( "(") (binary_expression "uVar36 & 0xff0000" (identifier "uVar36") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18")))) (; ";")) (if_statement "if (0xffff < uVar19 + 0x8000) {\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }" (if "if") (parenthesized_expression "(0xffff < uVar19 + 0x8000)" (( "(") (binary_expression "0xffff < uVar19 + 0x8000" (number_literal "0xffff") (< "<") (binary_expression "uVar19 + 0x8000" (identifier "uVar19") (+ "+") (number_literal "0x8000"))) () ")")) (compound_statement "{\n          uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );\n          FUN_0034a750(uVar21);\n          goto LAB_002c7359;\n        }" ({ "{") (expression_statement "uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          );" (assignment_expression "uVar21 = gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          )" (identifier "uVar21") (= "=") (call_expression "gettext(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          )" (identifier "gettext") (argument_list "(\n                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"\n                          )" (( "(") (string_literal ""small-data section exceeds 64KB; lower small-data size limit (see option -G)"" (" """) (string_content "small-data section exceeds 64KB; lower small-data size limit (see option -G)") (" """)) () ")")))) (; ";")) (expression_statement "FUN_0034a750(uVar21);" (call_expression "FUN_0034a750(uVar21)" (identifier "FUN_0034a750") (argument_list "(uVar21)" (( "(") (identifier "uVar21") () ")"))) (; ";")) (goto_statement "goto LAB_002c7359;" (goto "goto") (statement_identifier "LAB_002c7359") (; ";")) (} "}"))) (goto_statement "goto LAB_002c5c87;" (goto "goto") (statement_identifier "LAB_002c5c87") (; ";"))) (case_statement "case 9:" (case "case") (number_literal "9") (: ":")) (case_statement "case 0x66:" (case "case") (number_literal "0x66") (: ":")) (case_statement "case 0x8a:\n        goto switchD_002c4f87_caseD_9;" (case "case") (number_literal "0x8a") (: ":") (goto_statement "goto switchD_002c4f87_caseD_9;" (goto "goto") (statement_identifier "switchD_002c4f87_caseD_9") (; ";"))) (case_statement "case 10:\n        bVar48 = false;\nLAB_002c6a55:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }\n        break;" (case "case") (number_literal "10") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_002c6a55:\n        uVar17 = (uint)*param_10;" (statement_identifier "LAB_002c6a55") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")))) (; ";")) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" (identifier "uVar16") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x3fffc;\n          uVar16 = uVar45 - 0x40000;\n          if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" ({ "{") (expression_statement "uVar19 = uVar36 * 4;" (assignment_expression "uVar19 = uVar36 * 4" (identifier "uVar19") (= "=") (binary_expression "uVar36 * 4" (identifier "uVar36") (* "*") (number_literal "4"))) (; ";")) (expression_statement "uVar45 = uVar19 & 0x3fffc;" (assignment_expression "uVar45 = uVar19 & 0x3fffc" (identifier "uVar45") (= "=") (binary_expression "uVar19 & 0x3fffc" (identifier "uVar19") (& "&") (number_literal "0x3fffc"))) (; ";")) (expression_statement "uVar16 = uVar45 - 0x40000;" (assignment_expression "uVar16 = uVar45 - 0x40000" (identifier "uVar16") (= "=") (binary_expression "uVar45 - 0x40000" (identifier "uVar45") (- "-") (number_literal "0x40000"))) (; ";")) (if_statement "if ((uVar19 & 0x20000) == 0) {\n            uVar16 = uVar45;\n          }" (if "if") (parenthesized_expression "((uVar19 & 0x20000) == 0)" (( "(") (binary_expression "(uVar19 & 0x20000) == 0" (parenthesized_expression "(uVar19 & 0x20000)" (( "(") (binary_expression "uVar19 & 0x20000" (identifier "uVar19") (& "&") (number_literal "0x20000")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            uVar16 = uVar45;\n          }" ({ "{") (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" (identifier "uVar16") (= "=") (identifier "uVar45")) (; ";")) (} "}"))) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar19 = iVar38 - param_11 >> 2;" (assignment_expression "uVar19 = iVar38 - param_11 >> 2" (identifier "uVar19") (= "=") (binary_expression "iVar38 - param_11 >> 2" (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) (>> ">>") (number_literal "2"))) (; ";")) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" (identifier "uVar36") (= "=") (binary_expression "uVar36 ^ uVar19" (identifier "uVar36") (^ "^") (identifier "uVar19"))) (; ";")) (expression_statement "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;" (assignment_expression "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (( "(") (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18"))) () ")")) (^ "^") (identifier "uVar17"))) (; ";")) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "uVar34") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar16 = 3;" (assignment_expression "uVar16 = 3" (identifier "uVar16") (= "=") (number_literal "3")) (; ";")) (if_statement "if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }" (if "if") (parenthesized_expression "((uVar34 & 3) == 0)" (( "(") (binary_expression "(uVar34 & 3) == 0" (parenthesized_expression "(uVar34 & 3)" (( "(") (binary_expression "uVar34 & 3" (identifier "uVar34") (& "&") (number_literal "3")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);\n        }" ({ "{") (expression_statement "uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);" (assignment_expression "uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000)" (identifier "uVar16") (= "=") (call_expression "(uint)(0x3ffff < (iVar38 - param_11) + 0x20000)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0x3ffff < (iVar38 - param_11) + 0x20000)" (( "(") (binary_expression "0x3ffff < (iVar38 - param_11) + 0x20000" (number_literal "0x3ffff") (< "<") (binary_expression "(iVar38 - param_11) + 0x20000" (parenthesized_expression "(iVar38 - param_11)" (( "(") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) () ")")) (+ "+") (number_literal "0x20000"))) () ")")))) (; ";")) (} "}"))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xb:" (case "case") (number_literal "0xb") (: ":")) (case_statement "case 0x67:" (case "case") (number_literal "0x67") (: ":")) (case_statement "case 0x8e:\n        bVar48 = false;\nswitchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }\n        if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }\n        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }\n        goto LAB_002c81f0;" (case "case") (number_literal "0x8e") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_b:\n        if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }" (statement_identifier "switchD_002c5379_caseD_b") (: ":") (if_statement "if (param_8 == (undefined8 *)0x0) {\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }" (if "if") (parenthesized_expression "(param_8 == (undefined8 *)0x0)" (( "(") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");\n        }" ({ "{") (labeled_statement "LAB_002c82dc:\n                    \n          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");" (statement_identifier "LAB_002c82dc") (: ":") (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x2f3d,"relocate")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x2f3d") (, ",") (string_literal ""relocate"" (" """) (string_content "relocate") (" """)) () ")"))) (; ";"))) (} "}")))) (if_statement "if (*(long *)(param_4 + 0x20) == 0) {\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }" (if "if") (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          FUN_00290a70();\n          goto LAB_002c82dc;\n        }" ({ "{") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto LAB_002c82dc;" (goto "goto") (statement_identifier "LAB_002c82dc") (; ";")) (} "}"))) (expression_statement "local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3)" (identifier "local_e8") (= "=") (call_expression "FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3)" (identifier "FUN_0029b910") (argument_list "(*(long *)(param_4 + 0x20),param_8,0,plVar3)" (( "(") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (, ",") (identifier "param_8") (, ",") (number_literal "0") (, ",") (identifier "plVar3") () ")")))) (; ";")) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (if_statement "if (lVar30 != 0) {\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);\n          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n          uVar16 = (uint)*param_10;\n          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;\n          uVar16 = (uint)(0xffff < uVar36 + 0x8000);\n          goto LAB_002c624f;\n        }" ({ "{") (labeled_statement "LAB_002c6206:\n          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);" (statement_identifier "LAB_002c6206") (: ":") (expression_statement "uVar36 = FUN_00292520(lVar30,local_e8,plVar3);" (assignment_expression "uVar36 = FUN_00292520(lVar30,local_e8,plVar3)" (identifier "uVar36") (= "=") (call_expression "FUN_00292520(lVar30,local_e8,plVar3)" (identifier "FUN_00292520") (argument_list "(lVar30,local_e8,plVar3)" (( "(") (identifier "lVar30") (, ",") (identifier "local_e8") (, ",") (identifier "plVar3") () ")")))) (; ";"))) (if_statement "if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;" (if "if") (parenthesized_expression "(*(char *)((long)param_1 + 4) != '\0')" (( "(") (binary_expression "*(char *)((long)param_1 + 4) != '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" (* "*") (cast_expression "(char *)((long)param_1 + 4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_1 + 4)" (( "(") (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_1")) (+ "+") (number_literal "4")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_002c67b0;" (goto "goto") (statement_identifier "LAB_002c67b0") (; ";"))) (expression_statement "uVar16 = (uint)*param_10;" (assignment_expression "uVar16 = (uint)*param_10" (identifier "uVar16") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;" (assignment_expression "uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36" (identifier "uVar19") (= "=") (binary_expression "(uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36" (parenthesized_expression "(uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8)" (( "(") (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" (identifier "uVar16") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" (( "(") (binary_expression "uVar16 & 0xff0000" (identifier "uVar16") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) () ")")) (^ "^") (identifier "uVar36"))) (; ";")) (expression_statement "*(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;" (assignment_expression "*(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16" (parenthesized_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" (( "(") (binary_expression "(uVar19 & 0xff00) << 8 | uVar19 << 0x18" (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" (( "(") (binary_expression "uVar19 & 0xff00" (identifier "uVar19") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar19 << 0x18" (identifier "uVar19") (<< "<<") (number_literal "0x18"))) () ")")) (^ "^") (identifier "uVar16"))) (; ";")) (expression_statement "uVar16 = (uint)(0xffff < uVar36 + 0x8000);" (assignment_expression "uVar16 = (uint)(0xffff < uVar36 + 0x8000)" (identifier "uVar16") (= "=") (call_expression "(uint)(0xffff < uVar36 + 0x8000)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0xffff < uVar36 + 0x8000)" (( "(") (binary_expression "0xffff < uVar36 + 0x8000" (number_literal "0xffff") (< "<") (binary_expression "uVar36 + 0x8000" (identifier "uVar36") (+ "+") (number_literal "0x8000"))) () ")")))) (; ";")) (goto_statement "goto LAB_002c624f;" (goto "goto") (statement_identifier "LAB_002c624f") (; ";")) (} "}"))) (goto_statement "goto LAB_002c81f0;" (goto "goto") (statement_identifier "LAB_002c81f0") (; ";"))) (case_statement "case 0xc:\n        bVar48 = false;\nswitchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;\n        if ((bool)cVar13) goto LAB_002c59a8;\nLAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;\n        puVar37 = param_10;\n        goto LAB_002c5c85;" (case "case") (number_literal "0xc") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_c:\n        if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" (statement_identifier "switchD_002c5379_caseD_c") (: ":") (if_statement "if (*(long *)(param_4 + 0x28) == 0) {\n          iVar38 = 0;\n        }\n        else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" (if "if") (parenthesized_expression "(*(long *)(param_4 + 0x28) == 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x28) == 0" (pointer_expression "*(long *)(param_4 + 0x28)" (* "*") (cast_expression "(long *)(param_4 + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x28)" (( "(") (binary_expression "param_4 + 0x28" (identifier "param_4") (+ "+") (number_literal "0x28")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          iVar38 = 0;\n        }" ({ "{") (expression_statement "iVar38 = 0;" (assignment_expression "iVar38 = 0" (identifier "iVar38") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" (else "else") (compound_statement "{\n          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);\n          if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }\n        }" ({ "{") (expression_statement "iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);" (assignment_expression "iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40)" (identifier "iVar38") (= "=") (pointer_expression "*(int *)(*(long *)(param_4 + 0x28) + 0x40)" (* "*") (cast_expression "(int *)(*(long *)(param_4 + 0x28) + 0x40)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_4 + 0x28) + 0x40)" (( "(") (binary_expression "*(long *)(param_4 + 0x28) + 0x40" (pointer_expression "*(long *)(param_4 + 0x28)" (* "*") (cast_expression "(long *)(param_4 + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x28)" (( "(") (binary_expression "param_4 + 0x28" (identifier "param_4") (+ "+") (number_literal "0x28")) () ")")))) (+ "+") (number_literal "0x40")) () ")"))))) (; ";")) (if_statement "if (((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" (if "if") (parenthesized_expression "(((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0))" (( "(") (binary_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)" (parenthesized_expression "((*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0))" (( "(") (binary_expression "(*(long *)(param_4 + 0x20) != 0) &&\n              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)" (( "(") (binary_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0" (pointer_expression "*(long *)(*(long *)(param_4 + 0x20) + 0xd0)" (* "*") (cast_expression "(long *)(*(long *)(param_4 + 0x20) + 0xd0)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_4 + 0x20) + 0xd0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) + 0xd0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0xd0")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(plVar3[0x6e] != 0)" (( "(") (binary_expression "plVar3[0x6e] != 0" (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);\n          }" ({ "{") (expression_statement "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);" (assignment_expression "iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" (identifier "iVar38") (= "=") (binary_expression "iVar38 + *(int *)(plVar3[0x6e] + 0x10c)" (identifier "iVar38") (+ "+") (pointer_expression "*(int *)(plVar3[0x6e] + 0x10c)" (* "*") (cast_expression "(int *)(plVar3[0x6e] + 0x10c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(plVar3[0x6e] + 0x10c)" (( "(") (binary_expression "plVar3[0x6e] + 0x10c" (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]")) (+ "+") (number_literal "0x10c")) () ")")))))) (; ";")) (} "}"))) (} "}"))))) (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;" (assignment_expression "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (identifier "uVar17") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar17 << 0x18" (identifier "uVar17") (<< "<<") (number_literal "0x18")))) (; ";")) (if_statement "if (bVar48 == false) {\n          uVar17 = local_c8;\n        }" (if "if") (parenthesized_expression "(bVar48 == false)" (( "(") (binary_expression "bVar48 == false" (identifier "bVar48") (== "==") (false "false")) () ")")) (compound_statement "{\n          uVar17 = local_c8;\n        }" ({ "{") (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" (identifier "uVar17") (= "=") (identifier "local_c8")) (; ";")) (} "}"))) (expression_statement "iVar20 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "iVar20 = FUN_001d7270(param_9,plVar3,uVar17)" (identifier "iVar20") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar17)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar17") () ")")))) (; ";")) (expression_statement "uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;" (assignment_expression "uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38" (identifier "uVar19") (= "=") (binary_expression "(iVar20 + (int)plVar3[0x6d]) - iVar38" (parenthesized_expression "(iVar20 + (int)plVar3[0x6d])" (( "(") (binary_expression "iVar20 + (int)plVar3[0x6d]" (identifier "iVar20") (+ "+") (cast_expression "(int)plVar3[0x6d]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "plVar3[0x6d]" (identifier "plVar3") ([ "[") (number_literal "0x6d") (] "]")))) () ")")) (- "-") (identifier "iVar38"))) (; ";")) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (labeled_statement "LAB_002c5ccb:\n        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;" (statement_identifier "LAB_002c5ccb") (: ":") (expression_statement "uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18\n        ;" (assignment_expression "uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18" (identifier "uVar19") (= "=") (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18" (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8" (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8" (binary_expression "uVar19 >> 0x18" (identifier "uVar19") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" (( "(") (binary_expression "uVar19 & 0xff0000" (identifier "uVar19") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" (( "(") (binary_expression "uVar19 & 0xff00" (identifier "uVar19") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar19 << 0x18" (identifier "uVar19") (<< "<<") (number_literal "0x18")))) (; ";"))) (expression_statement "puVar37 = param_10;" (assignment_expression "puVar37 = param_10" (identifier "puVar37") (= "=") (identifier "param_10")) (; ";")) (goto_statement "goto LAB_002c5c85;" (goto "goto") (statement_identifier "LAB_002c5c85") (; ";"))) (case_statement "case 0x12:\n        bVar48 = false;\nswitchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);\n        if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }\n        break;" (case "case") (number_literal "0x12") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_12:\n        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);" (statement_identifier "switchD_002c5379_caseD_12") (: ":") (expression_statement "cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);" (assignment_expression "cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4)" (identifier "cVar13") (= "=") (call_expression "FUN_0029fc10(param_8,0x12,param_5,param_4)" (identifier "FUN_0029fc10") (argument_list "(param_8,0x12,param_5,param_4)" (( "(") (identifier "param_8") (, ",") (number_literal "0x12") (, ",") (identifier "param_5") (, ",") (identifier "param_4") () ")")))) (; ";"))) (if_statement "if (cVar13 != '\0') {\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }" (if "if") (parenthesized_expression "(cVar13 != '\0')" (( "(") (binary_expression "cVar13 != '\0'" (identifier "cVar13") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          uVar34 = (ulong)local_c8;\n          cVar13 = *(char *)((long)param_1 + 4);\n          if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }\n          goto LAB_002c6b22;\n        }" ({ "{") (expression_statement "uVar34 = (ulong)local_c8;" (assignment_expression "uVar34 = (ulong)local_c8" (identifier "uVar34") (= "=") (cast_expression "(ulong)local_c8" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "local_c8"))) (; ";")) (expression_statement "cVar13 = *(char *)((long)param_1 + 4);" (assignment_expression "cVar13 = *(char *)((long)param_1 + 4)" (identifier "cVar13") (= "=") (pointer_expression "*(char *)((long)param_1 + 4)" (* "*") (cast_expression "(char *)((long)param_1 + 4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_1 + 4)" (( "(") (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_1")) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if (bVar48 != false) {\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n            uVar34 = *param_10;\n            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n          }" ({ "{") (expression_statement "uVar34 = *param_10;" (assignment_expression "uVar34 = *param_10" (identifier "uVar34") (= "=") (pointer_expression "*param_10" (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;" (assignment_expression "uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38" (identifier "uVar34") (= "=") (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                     (uVar34 & 0xff00) << 0x28" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |\n                     (uVar34 & 0xff000000) << 8" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |\n                     (uVar34 & 0xff0000000000) >> 0x18" (binary_expression "uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28" (binary_expression "uVar34 >> 0x38" (identifier "uVar34") (>> ">>") (number_literal "0x38")) (| "|") (binary_expression "(uVar34 & 0xff000000000000) >> 0x28" (parenthesized_expression "(uVar34 & 0xff000000000000)" (( "(") (binary_expression "uVar34 & 0xff000000000000" (identifier "uVar34") (& "&") (number_literal "0xff000000000000")) () ")")) (>> ">>") (number_literal "0x28"))) (| "|") (binary_expression "(uVar34 & 0xff0000000000) >> 0x18" (parenthesized_expression "(uVar34 & 0xff0000000000)" (( "(") (binary_expression "uVar34 & 0xff0000000000" (identifier "uVar34") (& "&") (number_literal "0xff0000000000")) () ")")) (>> ">>") (number_literal "0x18"))) (| "|") (binary_expression "(uVar34 & 0xff00000000) >> 8" (parenthesized_expression "(uVar34 & 0xff00000000)" (( "(") (binary_expression "uVar34 & 0xff00000000" (identifier "uVar34") (& "&") (number_literal "0xff00000000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar34 & 0xff000000) << 8" (parenthesized_expression "(uVar34 & 0xff000000)" (( "(") (binary_expression "uVar34 & 0xff000000" (identifier "uVar34") (& "&") (number_literal "0xff000000")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "(uVar34 & 0xff0000) << 0x18" (parenthesized_expression "(uVar34 & 0xff0000)" (( "(") (binary_expression "uVar34 & 0xff0000" (identifier "uVar34") (& "&") (number_literal "0xff0000")) () ")")) (<< "<<") (number_literal "0x18"))) (| "|") (binary_expression "(uVar34 & 0xff00) << 0x28" (parenthesized_expression "(uVar34 & 0xff00)" (( "(") (binary_expression "uVar34 & 0xff00" (identifier "uVar34") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "0x28"))) (| "|") (binary_expression "uVar34 << 0x38" (identifier "uVar34") (<< "<<") (number_literal "0x38")))) (; ";")) (} "}"))) (goto_statement "goto LAB_002c6b22;" (goto "goto") (statement_identifier "LAB_002c6b22") (; ";")) (} "}"))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x13:" (case "case") (number_literal "0x13") (: ":")) (case_statement "case 0x91:" (case "case") (number_literal "0x91") (: ":")) (case_statement "case 0xf9:\n        bVar48 = false;\nswitchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }\n        if (lVar30 == 0) goto LAB_002c8364;\n        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\nLAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;\n        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }\n        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;\n        goto LAB_002c6098;" (case "case") (number_literal "0xf9") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_13:\n        lVar30 = *(long *)(param_4 + 0x20);" (statement_identifier "switchD_002c5379_caseD_13") (: ":") (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";"))) (if_statement "if (param_8 != (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }" (if "if") (parenthesized_expression "(param_8 != (undefined8 *)0x0)" (( "(") (binary_expression "param_8 != (undefined8 *)0x0" (identifier "param_8") (!= "!=") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }\n          goto LAB_002c827b;\n        }" ({ "{") (if_statement "if (lVar30 != 0) {\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\n            goto LAB_002c6043;\n          }" ({ "{") (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3)" (identifier "local_e8") (= "=") (call_expression "FUN_0029b910(lVar30,param_8,0,plVar3)" (identifier "FUN_0029b910") (argument_list "(lVar30,param_8,0,plVar3)" (( "(") (identifier "lVar30") (, ",") (identifier "param_8") (, ",") (number_literal "0") (, ",") (identifier "plVar3") () ")")))) (; ";")) (goto_statement "goto LAB_002c6043;" (goto "goto") (statement_identifier "LAB_002c6043") (; ";")) (} "}"))) (goto_statement "goto LAB_002c827b;" (goto "goto") (statement_identifier "LAB_002c827b") (; ";")) (} "}"))) (if_statement "if (lVar30 == 0) goto LAB_002c8364;" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c8364;" (goto "goto") (statement_identifier "LAB_002c8364") (; ";"))) (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" (identifier "local_e8") (= "=") (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" (( "(") (pointer_expression "**(code **)(*plVar3 + 0x160)" (* "*") (pointer_expression "*(code **)(*plVar3 + 0x160)" (* "*") (cast_expression "(code **)(*plVar3 + 0x160)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*plVar3 + 0x160)" (( "(") (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" (* "*") (identifier "plVar3")) (+ "+") (number_literal "0x160")) () ")"))))) () ")")) (argument_list "(plVar3,uVar7,0,(long)(int)local_c8)" (( "(") (identifier "plVar3") (, ",") (identifier "uVar7") (, ",") (number_literal "0") (, ",") (cast_expression "(long)(int)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (cast_expression "(int)local_c8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_c8"))) () ")")))) (; ";")) (labeled_statement "LAB_002c6043:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;" (statement_identifier "LAB_002c6043") (: ":") (if_statement "if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;" (if "if") (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c8276;" (goto "goto") (statement_identifier "LAB_002c8276") (; ";")))) (expression_statement "uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);" (assignment_expression "uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" (identifier "uVar19") (= "=") (call_expression "FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" (identifier "FUN_00292520") (argument_list "(*(long *)(param_4 + 0x20),local_e8,plVar3)" (( "(") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (, ",") (identifier "local_e8") (, ",") (identifier "plVar3") () ")")))) (; ";")) (if_statement "if (uVar17 == 0xf9) {\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }" (if "if") (parenthesized_expression "(uVar17 == 0xf9)" (( "(") (binary_expression "uVar17 == 0xf9" (identifier "uVar17") (== "==") (number_literal "0xf9")) () ")")) (compound_statement "{\n          puVar37 = param_1;\n          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;\n          goto LAB_002c5c85;\n        }" ({ "{") (expression_statement "puVar37 = param_1;" (assignment_expression "puVar37 = param_1" (identifier "puVar37") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;" (if "if") (parenthesized_expression "(*(char *)((long)param_1 + 4) == '\0')" (( "(") (binary_expression "*(char *)((long)param_1 + 4) == '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" (* "*") (cast_expression "(char *)((long)param_1 + 4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_1 + 4)" (( "(") (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_1")) (+ "+") (number_literal "4")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_002c5ccb;" (goto "goto") (statement_identifier "LAB_002c5ccb") (; ";"))) (goto_statement "goto LAB_002c5c85;" (goto "goto") (statement_identifier "LAB_002c5c85") (; ";")) (} "}"))) (if_statement "if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;" (if "if") (parenthesized_expression "(*(char *)((long)param_1 + 4) != '\0')" (( "(") (binary_expression "*(char *)((long)param_1 + 4) != '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" (* "*") (cast_expression "(char *)((long)param_1 + 4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_1 + 4)" (( "(") (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_1")) (+ "+") (number_literal "4")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (goto_statement "goto LAB_002c6098;" (goto "goto") (statement_identifier "LAB_002c6098") (; ";"))) (case_statement "case 0x14:" (case "case") (number_literal "0x14") (: ":")) (case_statement "case 0x92:\n        bVar48 = false;\nswitchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        FUN_001d7270(param_9,plVar3,uVar16);\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }\n        FUN_00290a70();\nLAB_002c81a2:\n        FUN_00290a70();\n        goto LAB_002c81a7;" (case "case") (number_literal "0x92") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_14:\n        uVar17 = (uint)*param_10;" (statement_identifier "switchD_002c5379_caseD_14") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" (identifier "uVar16") (= "=") (identifier "uVar36")) (; ";")) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" (if "if") (parenthesized_expression "(bVar48 == false)" (( "(") (binary_expression "bVar48 == false" (identifier "bVar48") (== "==") (false "false")) () ")")) (compound_statement "{\n          uVar16 = local_c8;\n        }" ({ "{") (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" (identifier "uVar16") (= "=") (identifier "local_c8")) (; ";")) (} "}"))) (expression_statement "FUN_001d7270(param_9,plVar3,uVar16);" (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")"))) (; ";")) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (if_statement "if (lVar30 != 0) {\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c8285;\n          uVar18 = FUN_002c47d0();\n          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;\n          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar36 = uVar36 ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          goto LAB_002c60ab;\n        }" ({ "{") (if_statement "if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }" (if "if") (parenthesized_expression "(*(long *)(lVar30 + 0xd0) == 0)" (( "(") (binary_expression "*(long *)(lVar30 + 0xd0) == 0" (pointer_expression "*(long *)(lVar30 + 0xd0)" (* "*") (cast_expression "(long *)(lVar30 + 0xd0)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0xd0)" (( "(") (binary_expression "lVar30 + 0xd0" (identifier "lVar30") (+ "+") (number_literal "0xd0")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            lVar30 = *(long *)(lVar30 + 200);\n          }" ({ "{") (expression_statement "lVar30 = *(long *)(lVar30 + 200);" (assignment_expression "lVar30 = *(long *)(lVar30 + 200)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(lVar30 + 200)" (* "*") (cast_expression "(long *)(lVar30 + 200)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 200)" (( "(") (binary_expression "lVar30 + 200" (identifier "lVar30") (+ "+") (number_literal "200")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n            lVar30 = plVar3[0x6e];\n          }" (else "else") (compound_statement "{\n            lVar30 = plVar3[0x6e];\n          }" ({ "{") (expression_statement "lVar30 = plVar3[0x6e];" (assignment_expression "lVar30 = plVar3[0x6e]" (identifier "lVar30") (= "=") (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]"))) (; ";")) (} "}")))) (if_statement "if (lVar30 == 0) goto LAB_002c8285;" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c8285;" (goto "goto") (statement_identifier "LAB_002c8285") (; ";"))) (expression_statement "uVar18 = FUN_002c47d0();" (assignment_expression "uVar18 = FUN_002c47d0()" (identifier "uVar18") (= "=") (call_expression "FUN_002c47d0()" (identifier "FUN_002c47d0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;" (if "if") (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c8280;" (goto "goto") (statement_identifier "LAB_002c8280") (; ";"))) (expression_statement "uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);" (assignment_expression "uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3)" (identifier "uVar19") (= "=") (call_expression "FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3)" (identifier "FUN_00292520") (argument_list "(*(long *)(param_4 + 0x20),uVar18,plVar3)" (( "(") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (, ",") (identifier "uVar18") (, ",") (identifier "plVar3") () ")")))) (; ";")) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" (identifier "uVar36") (= "=") (binary_expression "uVar36 ^ uVar19" (identifier "uVar36") (^ "^") (identifier "uVar19"))) (; ";")) (expression_statement "uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;" (assignment_expression "uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (identifier "uVar17") (= "=") (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (( "(") (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18"))) () ")")) (^ "^") (identifier "uVar17"))) (; ";")) (goto_statement "goto LAB_002c60ab;" (goto "goto") (statement_identifier "LAB_002c60ab") (; ";")) (} "}"))) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_002c81a2:\n        FUN_00290a70();" (statement_identifier "LAB_002c81a2") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (goto_statement "goto LAB_002c81a7;" (goto "goto") (statement_identifier "LAB_002c81a7") (; ";"))) (case_statement "case 0x15:" (case "case") (number_literal "0x15") (: ":")) (case_statement "case 0x93:\n        bVar48 = false;\nswitchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar19 = uVar36;\n        if (bVar48 == false) {\n          uVar19 = local_c8;\n        }\n        if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }\n        if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        break;" (case "case") (number_literal "0x93") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_15:\n        uVar17 = (uint)*param_10;" (statement_identifier "switchD_002c5379_caseD_15") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "uVar19 = uVar36;" (assignment_expression "uVar19 = uVar36" (identifier "uVar19") (= "=") (identifier "uVar36")) (; ";")) (if_statement "if (bVar48 == false) {\n          uVar19 = local_c8;\n        }" (if "if") (parenthesized_expression "(bVar48 == false)" (( "(") (binary_expression "bVar48 == false" (identifier "bVar48") (== "==") (false "false")) () ")")) (compound_statement "{\n          uVar19 = local_c8;\n        }" ({ "{") (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" (identifier "uVar19") (= "=") (identifier "local_c8")) (; ";")) (} "}"))) (if_statement "if (local_e2 != 0) {\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }" (if "if") (parenthesized_expression "(local_e2 != 0)" (( "(") (binary_expression "local_e2 != 0" (identifier "local_e2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }\n          if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }\n          if (lVar30 == 0) goto LAB_002c82c4;\n          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);\n          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);\n          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);\n        }" ({ "{") (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar19)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar19)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar19") () ")")))) (; ";")) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (if_statement "if (lVar30 == 0) {\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            FUN_00290a70();\n            uVar17 = local_c8;\n            goto LAB_002c6ed9;\n          }" ({ "{") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" (identifier "uVar17") (= "=") (identifier "local_c8")) (; ";")) (goto_statement "goto LAB_002c6ed9;" (goto "goto") (statement_identifier "LAB_002c6ed9") (; ";")) (} "}"))) (if_statement "if (*(long *)(lVar30 + 0xd0) == 0) {\n            lVar30 = *(long *)(lVar30 + 200);\n          }\n          else {\n            lVar30 = plVar3[0x6e];\n          }" (if "if") (parenthesized_expression "(*(long *)(lVar30 + 0xd0) == 0)" (( "(") (binary_expression "*(long *)(lVar30 + 0xd0) == 0" (pointer_expression "*(long *)(lVar30 + 0xd0)" (* "*") (cast_expression "(long *)(lVar30 + 0xd0)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0xd0)" (( "(") (binary_expression "lVar30 + 0xd0" (identifier "lVar30") (+ "+") (number_literal "0xd0")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            lVar30 = *(long *)(lVar30 + 200);\n          }" ({ "{") (expression_statement "lVar30 = *(long *)(lVar30 + 200);" (assignment_expression "lVar30 = *(long *)(lVar30 + 200)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(lVar30 + 200)" (* "*") (cast_expression "(long *)(lVar30 + 200)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 200)" (( "(") (binary_expression "lVar30 + 200" (identifier "lVar30") (+ "+") (number_literal "200")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n            lVar30 = plVar3[0x6e];\n          }" (else "else") (compound_statement "{\n            lVar30 = plVar3[0x6e];\n          }" ({ "{") (expression_statement "lVar30 = plVar3[0x6e];" (assignment_expression "lVar30 = plVar3[0x6e]" (identifier "lVar30") (= "=") (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]"))) (; ";")) (} "}")))) (if_statement "if (lVar30 == 0) goto LAB_002c82c4;" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c82c4;" (goto "goto") (statement_identifier "LAB_002c82c4") (; ";"))) (expression_statement "FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);" (call_expression "FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000)" (identifier "FUN_002c47d0") (argument_list "(lVar30,iVar38 + 0x8000U & 0xffff0000)" (( "(") (identifier "lVar30") (, ",") (binary_expression "iVar38 + 0x8000U & 0xffff0000" (binary_expression "iVar38 + 0x8000U" (identifier "iVar38") (+ "+") (number_literal "0x8000U")) (& "&") (number_literal "0xffff0000")) () ")"))) (; ";")) (expression_statement "iVar20 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "iVar20 = FUN_001d7270(param_9,plVar3,uVar19)" (identifier "iVar20") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar19)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar19") () ")")))) (; ";")) (expression_statement "uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);" (assignment_expression "uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000)" (identifier "uVar19") (= "=") (binary_expression "iVar20 - (iVar38 + 0x8000U & 0xffff0000)" (identifier "iVar20") (- "-") (parenthesized_expression "(iVar38 + 0x8000U & 0xffff0000)" (( "(") (binary_expression "iVar38 + 0x8000U & 0xffff0000" (binary_expression "iVar38 + 0x8000U" (identifier "iVar38") (+ "+") (number_literal "0x8000U")) (& "&") (number_literal "0xffff0000")) () ")")))) (; ";")) (} "}"))) (if_statement "if ((bool)cVar13) {\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (compound_statement "{\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }" ({ "{") (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint *)param_1 = uVar19;" (assignment_expression "*(uint *)param_1 = uVar19" (pointer_expression "*(uint *)param_1" (* "*") (cast_expression "(uint *)param_1" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (= "=") (identifier "uVar19")) (; ";")) (} "}")) (else_clause "else {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }" (else "else") (compound_statement "{\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }" ({ "{") (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" (identifier "uVar36") (= "=") (binary_expression "uVar36 ^ uVar19" (identifier "uVar36") (^ "^") (identifier "uVar19"))) (; ";")) (expression_statement "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;" (assignment_expression "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (( "(") (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18"))) () ")")) (^ "^") (identifier "uVar17"))) (; ";")) (expression_statement "uVar16 = (uint)(0xffff < uVar19 + 0x8000);" (assignment_expression "uVar16 = (uint)(0xffff < uVar19 + 0x8000)" (identifier "uVar16") (= "=") (call_expression "(uint)(0xffff < uVar19 + 0x8000)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0xffff < uVar19 + 0x8000)" (( "(") (binary_expression "0xffff < uVar19 + 0x8000" (number_literal "0xffff") (< "<") (binary_expression "uVar19 + 0x8000" (identifier "uVar19") (+ "+") (number_literal "0x8000"))) () ")")))) (; ";")) (} "}")))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x16:" (case "case") (number_literal "0x16") (: ":")) (case_statement "case 0x1e:" (case "case") (number_literal "0x1e") (: ":")) (case_statement "case 0x94:" (case "case") (number_literal "0x94") (: ":")) (case_statement "case 0x99:\n        bVar48 = false;\nswitchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }\n        if (lVar30 == 0) goto LAB_002c8271;\n        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;\n        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n        uVar36 = iVar38 + 0x8000U >> 0x10;\n        if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }\nLAB_002c67b0:\n        *(uint *)param_1 = uVar36;\n        uVar16 = 0;\nLAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }\n        break;" (case "case") (number_literal "0x99") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_16:\n        lVar30 = *(long *)(param_4 + 0x20);" (statement_identifier "switchD_002c5379_caseD_16") (: ":") (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";"))) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }" (if "if") (parenthesized_expression "(param_8 == (undefined8 *)0x0)" (( "(") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }\n          goto LAB_002c81a2;\n        }" ({ "{") (if_statement "if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5e6e;\n          }" ({ "{") (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" (identifier "local_e8") (= "=") (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" (( "(") (pointer_expression "**(code **)(*plVar3 + 0x160)" (* "*") (pointer_expression "*(code **)(*plVar3 + 0x160)" (* "*") (cast_expression "(code **)(*plVar3 + 0x160)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*plVar3 + 0x160)" (( "(") (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" (* "*") (identifier "plVar3")) (+ "+") (number_literal "0x160")) () ")"))))) () ")")) (argument_list "(plVar3,uVar7,0,(long)(int)local_c8)" (( "(") (identifier "plVar3") (, ",") (identifier "uVar7") (, ",") (number_literal "0") (, ",") (cast_expression "(long)(int)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (cast_expression "(int)local_c8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_c8"))) () ")")))) (; ";")) (goto_statement "goto LAB_002c5e6e;" (goto "goto") (statement_identifier "LAB_002c5e6e") (; ";")) (} "}"))) (goto_statement "goto LAB_002c81a2;" (goto "goto") (statement_identifier "LAB_002c81a2") (; ";")) (} "}"))) (if_statement "if (lVar30 == 0) goto LAB_002c8271;" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c8271;" (goto "goto") (statement_identifier "LAB_002c8271") (; ";"))) (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3)" (identifier "local_e8") (= "=") (call_expression "FUN_0029b910(lVar30,param_8,0,plVar3)" (identifier "FUN_0029b910") (argument_list "(lVar30,param_8,0,plVar3)" (( "(") (identifier "lVar30") (, ",") (identifier "param_8") (, ",") (number_literal "0") (, ",") (identifier "plVar3") () ")")))) (; ";")) (labeled_statement "LAB_002c5e6e:\n        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;" (statement_identifier "LAB_002c5e6e") (: ":") (if_statement "if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;" (if "if") (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c826c;" (goto "goto") (statement_identifier "LAB_002c826c") (; ";")))) (expression_statement "iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);" (assignment_expression "iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" (identifier "iVar38") (= "=") (call_expression "FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" (identifier "FUN_00292520") (argument_list "(*(long *)(param_4 + 0x20),local_e8,plVar3)" (( "(") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (, ",") (identifier "local_e8") (, ",") (identifier "plVar3") () ")")))) (; ";")) (expression_statement "uVar36 = iVar38 + 0x8000U >> 0x10;" (assignment_expression "uVar36 = iVar38 + 0x8000U >> 0x10" (identifier "uVar36") (= "=") (binary_expression "iVar38 + 0x8000U >> 0x10" (binary_expression "iVar38 + 0x8000U" (identifier "iVar38") (+ "+") (number_literal "0x8000U")) (>> ">>") (number_literal "0x10"))) (; ";")) (if_statement "if (*(char *)((long)param_1 + 4) == '\0') {\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }" (if "if") (parenthesized_expression "(*(char *)((long)param_1 + 4) == '\0')" (( "(") (binary_expression "*(char *)((long)param_1 + 4) == '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" (* "*") (cast_expression "(char *)((long)param_1 + 4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_1 + 4)" (( "(") (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_1")) (+ "+") (number_literal "4")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          uVar16 = 0;\n          uVar19 = (uint)*param_10;\n          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);\n          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n          goto LAB_002c624f;\n        }" ({ "{") (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar19 = (uint)*param_10;" (assignment_expression "uVar19 = (uint)*param_10" (identifier "uVar19") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);" (assignment_expression "uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8)" (identifier "uVar36") (= "=") (binary_expression "uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8)" (identifier "uVar36") (^ "^") (parenthesized_expression "(uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8)" (( "(") (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8" (binary_expression "uVar19 >> 0x18" (identifier "uVar19") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" (( "(") (binary_expression "uVar19 & 0xff0000" (identifier "uVar19") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) () ")")))) (; ";")) (expression_statement "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;" (assignment_expression "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (( "(") (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18"))) () ")")) (^ "^") (identifier "uVar19"))) (; ";")) (goto_statement "goto LAB_002c624f;" (goto "goto") (statement_identifier "LAB_002c624f") (; ";")) (} "}"))) (labeled_statement "LAB_002c67b0:\n        *(uint *)param_1 = uVar36;" (statement_identifier "LAB_002c67b0") (: ":") (expression_statement "*(uint *)param_1 = uVar36;" (assignment_expression "*(uint *)param_1 = uVar36" (pointer_expression "*(uint *)param_1" (* "*") (cast_expression "(uint *)param_1" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (= "=") (identifier "uVar36")) (; ";"))) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_002c624f:\n        if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }" (statement_identifier "LAB_002c624f") (: ":") (if_statement "if (local_e1 != false) {\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }" (if "if") (parenthesized_expression "(local_e1 != false)" (( "(") (binary_expression "local_e1 != false" (identifier "local_e1") (!= "!=") (false "false")) () ")")) (compound_statement "{\n          uVar34 = *(ulong *)(param_4 + 0x20);\n          if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }\n        }" ({ "{") (expression_statement "uVar34 = *(ulong *)(param_4 + 0x20);" (assignment_expression "uVar34 = *(ulong *)(param_4 + 0x20)" (identifier "uVar34") (= "=") (pointer_expression "*(ulong *)(param_4 + 0x20)" (* "*") (cast_expression "(ulong *)(param_4 + 0x20)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (if_statement "if (uVar34 == 0) {\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }\n          else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }" (if "if") (parenthesized_expression "(uVar34 == 0)" (( "(") (binary_expression "uVar34 == 0" (identifier "uVar34") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_002c638e:\n            FUN_00290a70();\nswitchD_002c4f87_caseD_5:\n            bVar48 = false;\nswitchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }\n          }" ({ "{") (labeled_statement "LAB_002c638e:\n            FUN_00290a70();" (statement_identifier "LAB_002c638e") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "switchD_002c4f87_caseD_5:\n            bVar48 = false;" (statement_identifier "switchD_002c4f87_caseD_5") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";"))) (labeled_statement "switchD_002c5379_caseD_5:\n            if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }" (statement_identifier "switchD_002c5379_caseD_5") (: ":") (if_statement "if (param_3 == 4) {\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }\n            else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }" (if "if") (parenthesized_expression "(param_3 == 4)" (( "(") (binary_expression "param_3 == 4" (identifier "param_3") (== "==") (number_literal "4")) () ")")) (compound_statement "{\n              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);\n            }" ({ "{") (expression_statement "uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1);" (assignment_expression "uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1)" (identifier "uVar16") (= "=") (call_expression "FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1)" (identifier "FUN_002a8180") (argument_list "(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0\n                                    ,param_4,uVar34 & 0xff,param_1)" (( "(") (identifier "param_10") (, ",") (identifier "plVar3") (, ",") (identifier "param_9") (, ",") (identifier "local_c8") (, ",") (identifier "param_11") (, ",") (identifier "cVar12") (, ",") (identifier "uVar17") (, ",") (identifier "bVar48") (, ",") (number_literal "0") (, ",") (identifier "param_4") (, ",") (binary_expression "uVar34 & 0xff" (identifier "uVar34") (& "&") (number_literal "0xff")) (, ",") (identifier "param_1") () ")")))) (; ";")) (} "}")) (else_clause "else {\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }" (else "else") (compound_statement "{\n              if (param_3 != 9) goto LAB_002c81f5;\n              lVar30 = FUN_0049cb70(0x40);\n              uVar16 = 0;\n              *(ulong **)(lVar30 + 0x10) = param_10;\n              *(long **)(lVar30 + 0x18) = plVar3;\n              *(uint **)(lVar30 + 0x20) = param_9;\n              *(uint *)(lVar30 + 0x28) = local_c8;\n              *(uint *)(lVar30 + 0x2c) = uVar17;\n              *(uint *)(lVar30 + 0x30) = uVar7;\n              *(bool *)(lVar30 + 0x34) = bVar48;\n              *(uint *)(lVar30 + 0x38) = param_11;\n              *(char *)(lVar30 + 0x3c) = cVar12;\n              FUN_004a11e0(lVar30,&DAT_0067db40);\n              _DAT_0067db50 = _DAT_0067db50 + 1;\n            }" ({ "{") (if_statement "if (param_3 != 9) goto LAB_002c81f5;" (if "if") (parenthesized_expression "(param_3 != 9)" (( "(") (binary_expression "param_3 != 9" (identifier "param_3") (!= "!=") (number_literal "9")) () ")")) (goto_statement "goto LAB_002c81f5;" (goto "goto") (statement_identifier "LAB_002c81f5") (; ";"))) (expression_statement "lVar30 = FUN_0049cb70(0x40);" (assignment_expression "lVar30 = FUN_0049cb70(0x40)" (identifier "lVar30") (= "=") (call_expression "FUN_0049cb70(0x40)" (identifier "FUN_0049cb70") (argument_list "(0x40)" (( "(") (number_literal "0x40") () ")")))) (; ";")) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(ulong **)(lVar30 + 0x10) = param_10;" (assignment_expression "*(ulong **)(lVar30 + 0x10) = param_10" (pointer_expression "*(ulong **)(lVar30 + 0x10)" (* "*") (cast_expression "(ulong **)(lVar30 + 0x10)" (( "(") (type_descriptor "ulong **" (type_identifier "ulong") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(lVar30 + 0x10)" (( "(") (binary_expression "lVar30 + 0x10" (identifier "lVar30") (+ "+") (number_literal "0x10")) () ")")))) (= "=") (identifier "param_10")) (; ";")) (expression_statement "*(long **)(lVar30 + 0x18) = plVar3;" (assignment_expression "*(long **)(lVar30 + 0x18) = plVar3" (pointer_expression "*(long **)(lVar30 + 0x18)" (* "*") (cast_expression "(long **)(lVar30 + 0x18)" (( "(") (type_descriptor "long **" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(lVar30 + 0x18)" (( "(") (binary_expression "lVar30 + 0x18" (identifier "lVar30") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "plVar3")) (; ";")) (expression_statement "*(uint **)(lVar30 + 0x20) = param_9;" (assignment_expression "*(uint **)(lVar30 + 0x20) = param_9" (pointer_expression "*(uint **)(lVar30 + 0x20)" (* "*") (cast_expression "(uint **)(lVar30 + 0x20)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(lVar30 + 0x20)" (( "(") (binary_expression "lVar30 + 0x20" (identifier "lVar30") (+ "+") (number_literal "0x20")) () ")")))) (= "=") (identifier "param_9")) (; ";")) (expression_statement "*(uint *)(lVar30 + 0x28) = local_c8;" (assignment_expression "*(uint *)(lVar30 + 0x28) = local_c8" (pointer_expression "*(uint *)(lVar30 + 0x28)" (* "*") (cast_expression "(uint *)(lVar30 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x28)" (( "(") (binary_expression "lVar30 + 0x28" (identifier "lVar30") (+ "+") (number_literal "0x28")) () ")")))) (= "=") (identifier "local_c8")) (; ";")) (expression_statement "*(uint *)(lVar30 + 0x2c) = uVar17;" (assignment_expression "*(uint *)(lVar30 + 0x2c) = uVar17" (pointer_expression "*(uint *)(lVar30 + 0x2c)" (* "*") (cast_expression "(uint *)(lVar30 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x2c)" (( "(") (binary_expression "lVar30 + 0x2c" (identifier "lVar30") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (identifier "uVar17")) (; ";")) (expression_statement "*(uint *)(lVar30 + 0x30) = uVar7;" (assignment_expression "*(uint *)(lVar30 + 0x30) = uVar7" (pointer_expression "*(uint *)(lVar30 + 0x30)" (* "*") (cast_expression "(uint *)(lVar30 + 0x30)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x30)" (( "(") (binary_expression "lVar30 + 0x30" (identifier "lVar30") (+ "+") (number_literal "0x30")) () ")")))) (= "=") (identifier "uVar7")) (; ";")) (expression_statement "*(bool *)(lVar30 + 0x34) = bVar48;" (assignment_expression "*(bool *)(lVar30 + 0x34) = bVar48" (pointer_expression "*(bool *)(lVar30 + 0x34)" (* "*") (cast_expression "(bool *)(lVar30 + 0x34)" (( "(") (type_descriptor "bool *" (primitive_type "bool") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x34)" (( "(") (binary_expression "lVar30 + 0x34" (identifier "lVar30") (+ "+") (number_literal "0x34")) () ")")))) (= "=") (identifier "bVar48")) (; ";")) (expression_statement "*(uint *)(lVar30 + 0x38) = param_11;" (assignment_expression "*(uint *)(lVar30 + 0x38) = param_11" (pointer_expression "*(uint *)(lVar30 + 0x38)" (* "*") (cast_expression "(uint *)(lVar30 + 0x38)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x38)" (( "(") (binary_expression "lVar30 + 0x38" (identifier "lVar30") (+ "+") (number_literal "0x38")) () ")")))) (= "=") (identifier "param_11")) (; ";")) (expression_statement "*(char *)(lVar30 + 0x3c) = cVar12;" (assignment_expression "*(char *)(lVar30 + 0x3c) = cVar12" (pointer_expression "*(char *)(lVar30 + 0x3c)" (* "*") (cast_expression "(char *)(lVar30 + 0x3c)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x3c)" (( "(") (binary_expression "lVar30 + 0x3c" (identifier "lVar30") (+ "+") (number_literal "0x3c")) () ")")))) (= "=") (identifier "cVar12")) (; ";")) (expression_statement "FUN_004a11e0(lVar30,&DAT_0067db40);" (call_expression "FUN_004a11e0(lVar30,&DAT_0067db40)" (identifier "FUN_004a11e0") (argument_list "(lVar30,&DAT_0067db40)" (( "(") (identifier "lVar30") (, ",") (pointer_expression "&DAT_0067db40" (& "&") (identifier "DAT_0067db40")) () ")"))) (; ";")) (expression_statement "_DAT_0067db50 = _DAT_0067db50 + 1;" (assignment_expression "_DAT_0067db50 = _DAT_0067db50 + 1" (identifier "_DAT_0067db50") (= "=") (binary_expression "_DAT_0067db50 + 1" (identifier "_DAT_0067db50") (+ "+") (number_literal "1"))) (; ";")) (} "}"))))) (} "}")) (else_clause "else {\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }" (else "else") (compound_statement "{\n            if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }\n            uVar17 = FUN_001d7270(param_9,plVar3,0);\n            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;\n          }" ({ "{") (if_statement "if (param_8 != (undefined8 *)0x0) {\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }" (if "if") (parenthesized_expression "(param_8 != (undefined8 *)0x0)" (( "(") (binary_expression "param_8 != (undefined8 *)0x0" (identifier "param_8") (!= "!=") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }\n            }" ({ "{") (labeled_statement "LAB_002c6275:\n              if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }" (statement_identifier "LAB_002c6275") (: ":") (if_statement "if (*(char *)(param_8 + 0x11) != '\0') {\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }" (if "if") (parenthesized_expression "(*(char *)(param_8 + 0x11) != '\0')" (( "(") (binary_expression "*(char *)(param_8 + 0x11) != '\0'" (pointer_expression "*(char *)(param_8 + 0x11)" (* "*") (cast_expression "(char *)(param_8 + 0x11)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 0x11)" (( "(") (binary_expression "param_8 + 0x11" (identifier "param_8") (+ "+") (number_literal "0x11")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                uVar17 = FUN_001d7270(param_9,plVar3,0);\n                if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }\n                goto LAB_002c8347;\n              }" ({ "{") (expression_statement "uVar17 = FUN_001d7270(param_9,plVar3,0);" (assignment_expression "uVar17 = FUN_001d7270(param_9,plVar3,0)" (identifier "uVar17") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,0)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,0)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (number_literal "0") () ")")))) (; ";")) (if_statement "if (*(int *)((long)param_8 + 0x5c) != 2) {\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }" (if "if") (parenthesized_expression "(*(int *)((long)param_8 + 0x5c) != 2)" (( "(") (binary_expression "*(int *)((long)param_8 + 0x5c) != 2" (pointer_expression "*(int *)((long)param_8 + 0x5c)" (* "*") (cast_expression "(int *)((long)param_8 + 0x5c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x5c)" (( "(") (binary_expression "(long)param_8 + 0x5c" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x5c")) () ")")))) (!= "!=") (number_literal "2")) () ")")) (compound_statement "{\n                  piVar4 = *(int **)(uVar34 + 0xd0);\n                  if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }\n                  if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }\n                  goto LAB_002c8342;\n                }" ({ "{") (expression_statement "piVar4 = *(int **)(uVar34 + 0xd0);" (assignment_expression "piVar4 = *(int **)(uVar34 + 0xd0)" (identifier "piVar4") (= "=") (pointer_expression "*(int **)(uVar34 + 0xd0)" (* "*") (cast_expression "(int **)(uVar34 + 0xd0)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(uVar34 + 0xd0)" (( "(") (binary_expression "uVar34 + 0xd0" (identifier "uVar34") (+ "+") (number_literal "0xd0")) () ")"))))) (; ";")) (if_statement "if (piVar4 == (int *)0x0) {\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }\n                  else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }" (if "if") (parenthesized_expression "(piVar4 == (int *)0x0)" (( "(") (binary_expression "piVar4 == (int *)0x0" (identifier "piVar4") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);\n                  }" ({ "{") (expression_statement "iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);" (assignment_expression "iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200)" (identifier "iVar38") (= "=") (binary_expression "(*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200)" (subscript_expression "(*(int **)(uVar34 + 200))[1]" (parenthesized_expression "(*(int **)(uVar34 + 200))" (( "(") (pointer_expression "*(int **)(uVar34 + 200)" (* "*") (cast_expression "(int **)(uVar34 + 200)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(uVar34 + 200)" (( "(") (binary_expression "uVar34 + 200" (identifier "uVar34") (+ "+") (number_literal "200")) () ")")))) () ")")) ([ "[") (number_literal "1") (] "]")) (+ "+") (pointer_expression "**(int **)(uVar34 + 200)" (* "*") (pointer_expression "*(int **)(uVar34 + 200)" (* "*") (cast_expression "(int **)(uVar34 + 200)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(uVar34 + 200)" (( "(") (binary_expression "uVar34 + 200" (identifier "uVar34") (+ "+") (number_literal "200")) () ")"))))))) (; ";")) (} "}")) (else_clause "else {\n                    iVar38 = piVar4[1] + *piVar4;\n                  }" (else "else") (compound_statement "{\n                    iVar38 = piVar4[1] + *piVar4;\n                  }" ({ "{") (expression_statement "iVar38 = piVar4[1] + *piVar4;" (assignment_expression "iVar38 = piVar4[1] + *piVar4" (identifier "iVar38") (= "=") (binary_expression "piVar4[1] + *piVar4" (subscript_expression "piVar4[1]" (identifier "piVar4") ([ "[") (number_literal "1") (] "]")) (+ "+") (pointer_expression "*piVar4" (* "*") (identifier "piVar4")))) (; ";")) (} "}")))) (if_statement "if (*(int *)(param_8 + 4) != 0) {\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }" (if "if") (parenthesized_expression "(*(int *)(param_8 + 4) != 0)" (( "(") (binary_expression "*(int *)(param_8 + 4) != 0" (pointer_expression "*(int *)(param_8 + 4)" (* "*") (cast_expression "(int *)(param_8 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 4)" (( "(") (binary_expression "param_8 + 4" (identifier "param_8") (+ "+") (number_literal "4")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    *(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;\n                    break;\n                  }" ({ "{") (expression_statement "*(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18;" (assignment_expression "*(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)) =\n                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18" (pointer_expression "*(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3))" (* "*") (cast_expression "(uint *)(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3))" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3))" (( "(") (binary_expression "*(long *)(uVar34 + 0xb8) +\n                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)" (pointer_expression "*(long *)(uVar34 + 0xb8)" (* "*") (cast_expression "(long *)(uVar34 + 0xb8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar34 + 0xb8)" (( "(") (binary_expression "uVar34 + 0xb8" (identifier "uVar34") (+ "+") (number_literal "0xb8")) () ")")))) (+ "+") (call_expression "(ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3)" (( "(") (binary_expression "(uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20) >> 3" (call_expression "(uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20)" (( "(") (binary_expression "((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2) * 0x20" (parenthesized_expression "((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2)" (( "(") (binary_expression "(*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38 + 2" (binary_expression "(*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +\n                                            iVar38" (parenthesized_expression "(*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0))" (( "(") (binary_expression "*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)" (pointer_expression "*(int *)(param_8 + 4)" (* "*") (cast_expression "(int *)(param_8 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 4)" (( "(") (binary_expression "param_8 + 4" (identifier "param_8") (+ "+") (number_literal "4")) () ")")))) (- "-") (pointer_expression "*(int *)(uVar34 + 0xc0)" (* "*") (cast_expression "(int *)(uVar34 + 0xc0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar34 + 0xc0)" (( "(") (binary_expression "uVar34 + 0xc0" (identifier "uVar34") (+ "+") (number_literal "0xc0")) () ")"))))) () ")")) (+ "+") (identifier "iVar38")) (+ "+") (number_literal "2")) () ")")) (* "*") (number_literal "0x20")) () ")"))) (>> ">>") (number_literal "3")) () ")")))) () ")")))) (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                         uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar17 << 0x18" (identifier "uVar17") (<< "<<") (number_literal "0x18")))) (; ";")) (break_statement "break;" (break "break") (; ";")) (} "}"))) (goto_statement "goto LAB_002c8342;" (goto "goto") (statement_identifier "LAB_002c8342") (; ";")) (} "}"))) (goto_statement "goto LAB_002c8347;" (goto "goto") (statement_identifier "LAB_002c8347") (; ";")) (} "}")))) (} "}"))) (expression_statement "uVar17 = FUN_001d7270(param_9,plVar3,0);" (assignment_expression "uVar17 = FUN_001d7270(param_9,plVar3,0)" (identifier "uVar17") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,0)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,0)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "*(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n            ;" (assignment_expression "*(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =\n                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (pointer_expression "*(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8)" (* "*") (cast_expression "(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(uVar34 + 0xb8) + (ulong)local_e8)" (( "(") (binary_expression "*(long *)(uVar34 + 0xb8) + (ulong)local_e8" (pointer_expression "*(long *)(uVar34 + 0xb8)" (* "*") (cast_expression "(long *)(uVar34 + 0xb8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar34 + 0xb8)" (( "(") (binary_expression "uVar34 + 0xb8" (identifier "uVar34") (+ "+") (number_literal "0xb8")) () ")")))) (+ "+") (cast_expression "(ulong)local_e8" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "local_e8"))) () ")")))) (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar17 << 0x18" (identifier "uVar17") (<< "<<") (number_literal "0x18")))) (; ";")) (} "}")))) (} "}")))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x17:" (case "case") (number_literal "0x17") (: ":")) (case_statement "case 0x1f:" (case "case") (number_literal "0x1f") (: ":")) (case_statement "case 0x95:" (case "case") (number_literal "0x95") (: ":")) (case_statement "case 0x9a:\n        bVar48 = false;\nswitchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }\n        if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }\n        FUN_00290a70();\nLAB_002c826c:\n        FUN_00290a70();\nLAB_002c8271:\n        FUN_00290a70();\nLAB_002c8276:\n        FUN_00290a70();\nLAB_002c827b:\n        FUN_00290a70();\nLAB_002c8280:\n        FUN_00290a70();\nLAB_002c8285:\n        FUN_00293370();\nLAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");" (case "case") (number_literal "0x9a") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_17:\n        lVar30 = *(long *)(param_4 + 0x20);" (statement_identifier "switchD_002c5379_caseD_17") (: ":") (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";"))) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }" (if "if") (parenthesized_expression "(param_8 == (undefined8 *)0x0)" (( "(") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }\nLAB_002c8369:\n          FUN_00290a70();\nLAB_002c836e:\n          FUN_00290a70();\n          goto LAB_002c8373;\n        }" ({ "{") (if_statement "if (lVar30 != 0) {\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);\n            goto LAB_002c5ddf;\n          }" ({ "{") (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" (identifier "local_e8") (= "=") (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" (( "(") (pointer_expression "**(code **)(*plVar3 + 0x160)" (* "*") (pointer_expression "*(code **)(*plVar3 + 0x160)" (* "*") (cast_expression "(code **)(*plVar3 + 0x160)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*plVar3 + 0x160)" (( "(") (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" (* "*") (identifier "plVar3")) (+ "+") (number_literal "0x160")) () ")"))))) () ")")) (argument_list "(plVar3,uVar7,0,(long)(int)local_c8)" (( "(") (identifier "plVar3") (, ",") (identifier "uVar7") (, ",") (number_literal "0") (, ",") (cast_expression "(long)(int)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (cast_expression "(int)local_c8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_c8"))) () ")")))) (; ";")) (goto_statement "goto LAB_002c5ddf;" (goto "goto") (statement_identifier "LAB_002c5ddf") (; ";")) (} "}"))) (labeled_statement "LAB_002c8369:\n          FUN_00290a70();" (statement_identifier "LAB_002c8369") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c836e:\n          FUN_00290a70();" (statement_identifier "LAB_002c836e") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (goto_statement "goto LAB_002c8373;" (goto "goto") (statement_identifier "LAB_002c8373") (; ";")) (} "}"))) (if_statement "if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);\nLAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }\n          FUN_00290a70();\n        }" ({ "{") (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3)" (identifier "local_e8") (= "=") (call_expression "FUN_0029b910(lVar30,param_8,0,plVar3)" (identifier "FUN_0029b910") (argument_list "(lVar30,param_8,0,plVar3)" (( "(") (identifier "lVar30") (, ",") (identifier "param_8") (, ",") (number_literal "0") (, ",") (identifier "plVar3") () ")")))) (; ";")) (labeled_statement "LAB_002c5ddf:\n          if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }" (statement_identifier "LAB_002c5ddf") (: ":") (if_statement "if (*(long *)(param_4 + 0x20) != 0) {\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }" (if "if") (parenthesized_expression "(*(long *)(param_4 + 0x20) != 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) != 0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);\n            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;\n            uVar16 = 0;\n            uVar19 = (uint)*param_10;\n            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;\n            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;\n            goto LAB_002c624f;\n          }" ({ "{") (expression_statement "uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);" (assignment_expression "uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" (identifier "uVar36") (= "=") (call_expression "FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3)" (identifier "FUN_00292520") (argument_list "(*(long *)(param_4 + 0x20),local_e8,plVar3)" (( "(") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (, ",") (identifier "local_e8") (, ",") (identifier "plVar3") () ")")))) (; ";")) (if_statement "if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;" (if "if") (parenthesized_expression "(*(char *)((long)param_1 + 4) != '\0')" (( "(") (binary_expression "*(char *)((long)param_1 + 4) != '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" (* "*") (cast_expression "(char *)((long)param_1 + 4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_1 + 4)" (( "(") (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_1")) (+ "+") (number_literal "4")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_002c67b0;" (goto "goto") (statement_identifier "LAB_002c67b0") (; ";"))) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar19 = (uint)*param_10;" (assignment_expression "uVar19 = (uint)*param_10" (identifier "uVar19") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;" (assignment_expression "uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36" (identifier "uVar36") (= "=") (binary_expression "(uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36" (parenthesized_expression "(uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8)" (( "(") (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8" (binary_expression "uVar19 >> 0x18" (identifier "uVar19") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" (( "(") (binary_expression "uVar19 & 0xff0000" (identifier "uVar19") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) () ")")) (^ "^") (identifier "uVar36"))) (; ";")) (expression_statement "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;" (assignment_expression "*(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (( "(") (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18"))) () ")")) (^ "^") (identifier "uVar19"))) (; ";")) (goto_statement "goto LAB_002c624f;" (goto "goto") (statement_identifier "LAB_002c624f") (; ";")) (} "}")))) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_002c826c:\n        FUN_00290a70();" (statement_identifier "LAB_002c826c") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c8271:\n        FUN_00290a70();" (statement_identifier "LAB_002c8271") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c8276:\n        FUN_00290a70();" (statement_identifier "LAB_002c8276") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c827b:\n        FUN_00290a70();" (statement_identifier "LAB_002c827b") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c8280:\n        FUN_00290a70();" (statement_identifier "LAB_002c8280") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c8285:\n        FUN_00293370();" (statement_identifier "LAB_002c8285") (: ":") (expression_statement "FUN_00293370();" (call_expression "FUN_00293370()" (identifier "FUN_00293370") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c828a:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");" (statement_identifier "LAB_002c828a") (: ":") (expression_statement "FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x86a,"tls_ldm_offset")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x86a") (, ",") (string_literal ""tls_ldm_offset"" (" """) (string_content "tls_ldm_offset") (" """)) () ")"))) (; ";")))) (case_statement "case 0x18:" (case "case") (number_literal "0x18") (: ":")) (case_statement "case 0x96:\n        bVar48 = false;\nLAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;\nLAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);\n        uVar19 = (uint)uVar34;\n        if (cVar13 != '\0') goto LAB_002c59a8;\n        uVar16 = 0;\n        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;\n        break;" (case "case") (number_literal "0x96") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_002c6b1a:\n        uVar34 = (ulong)-local_c0;" (statement_identifier "LAB_002c6b1a") (: ":") (expression_statement "uVar34 = (ulong)-local_c0;" (assignment_expression "uVar34 = (ulong)-local_c0" (identifier "uVar34") (= "=") (binary_expression "(ulong)-local_c0" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (- "-") (identifier "local_c0"))) (; ";"))) (labeled_statement "LAB_002c6b22:\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);" (statement_identifier "LAB_002c6b22") (: ":") (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar34);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar34)" (identifier "uVar34") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar34)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar34)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar34") () ")")))) (; ";"))) (expression_statement "uVar19 = (uint)uVar34;" (assignment_expression "uVar19 = (uint)uVar34" (identifier "uVar19") (= "=") (cast_expression "(uint)uVar34" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar34"))) (; ";")) (if_statement "if (cVar13 != '\0') goto LAB_002c59a8;" (if "if") (parenthesized_expression "(cVar13 != '\0')" (( "(") (binary_expression "cVar13 != '\0'" (identifier "cVar13") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;" (assignment_expression "*param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38" (pointer_expression "*param_10" (* "*") (identifier "param_10")) (= "=") (binary_expression "(uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38" (binary_expression "(uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |\n                    (uVar34 & 0xff00) << 0x28" (binary_expression "(uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18" (binary_expression "(uVar34 & 0xff000000) << 8" (parenthesized_expression "(uVar34 & 0xff000000)" (( "(") (binary_expression "uVar34 & 0xff000000" (identifier "uVar34") (& "&") (number_literal "0xff000000")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "(uVar34 & 0xff0000) << 0x18" (parenthesized_expression "(uVar34 & 0xff0000)" (( "(") (binary_expression "uVar34 & 0xff0000" (identifier "uVar34") (& "&") (number_literal "0xff0000")) () ")")) (<< "<<") (number_literal "0x18"))) (| "|") (binary_expression "(uVar34 & 0xff00) << 0x28" (parenthesized_expression "(uVar34 & 0xff00)" (( "(") (binary_expression "uVar34 & 0xff00" (identifier "uVar34") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "0x28"))) (| "|") (binary_expression "uVar34 << 0x38" (identifier "uVar34") (<< "<<") (number_literal "0x38")))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x1c:" (case "case") (number_literal "0x1c") (: ":")) (case_statement "case 0x97:\n        bVar48 = false;\nLAB_002c59bd:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);\n        goto joined_r0x002c59a3;" (case "case") (number_literal "0x97") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_002c59bd:\n        uVar17 = (uint)*param_10;" (statement_identifier "LAB_002c59bd") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar16 = (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar16 = (uVar17 & 0xff0000) >> 8" (identifier "uVar16") (= "=") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (; ";")) (expression_statement "uVar36 = uVar17 >> 0x18 | uVar16;" (assignment_expression "uVar36 = uVar17 >> 0x18 | uVar16" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | uVar16" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (identifier "uVar16"))) (; ";")) (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" (identifier "uVar19") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }" (if "if") (parenthesized_expression "((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0))" (( "(") (binary_expression "(bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)" (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (&& "&&") (parenthesized_expression "(uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)" (( "(") (comma_expression "uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0" (assignment_expression "uVar19 = uVar36 - 0x10000" (identifier "uVar19") (= "=") (binary_expression "uVar36 - 0x10000" (identifier "uVar36") (- "-") (number_literal "0x10000"))) (, ",") (binary_expression "(uVar16 & 0x8000) == 0" (parenthesized_expression "(uVar16 & 0x8000)" (( "(") (binary_expression "uVar16 & 0x8000" (identifier "uVar16") (& "&") (number_literal "0x8000")) () ")")) (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n          uVar19 = uVar36;\n        }" ({ "{") (expression_statement "uVar19 = uVar36;" (assignment_expression "uVar19 = uVar36" (identifier "uVar19") (= "=") (identifier "uVar36")) (; ";")) (} "}"))) (expression_statement "uVar16 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "uVar16 = FUN_001d7270(param_9,plVar3,uVar19)" (identifier "uVar16") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar19)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar19") () ")")))) (; ";")) (expression_statement "uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);" (assignment_expression "uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20)" (identifier "uVar19") (= "=") (call_expression "(uint)((ulong)uVar16 + 0x80008000 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulong)uVar16 + 0x80008000 >> 0x20)" (( "(") (binary_expression "(ulong)uVar16 + 0x80008000 >> 0x20" (binary_expression "(ulong)uVar16 + 0x80008000" (cast_expression "(ulong)uVar16" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar16")) (+ "+") (number_literal "0x80008000")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (goto_statement "goto joined_r0x002c59a3;" (goto "goto") (statement_identifier "joined_r0x002c59a3") (; ";"))) (case_statement "case 0x1d:" (case "case") (number_literal "0x1d") (: ":")) (case_statement "case 0x98:\n        bVar48 = false;\nLAB_002c6b55:\n        uVar19 = (uint)*param_10;\n        uVar17 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }\n        FUN_001d7270(param_9,plVar3,uVar17);\n        if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }\n        uVar16 = 0;\n        *(uint *)param_1 = 0;\n        break;" (case "case") (number_literal "0x98") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_002c6b55:\n        uVar19 = (uint)*param_10;" (statement_identifier "LAB_002c6b55") (: ":") (expression_statement "uVar19 = (uint)*param_10;" (assignment_expression "uVar19 = (uint)*param_10" (identifier "uVar19") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" (identifier "uVar17") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n          uVar16 = (uVar19 & 0xff0000) >> 8;\n          uVar36 = uVar19 >> 0x18 | uVar16;\n          uVar17 = uVar36 - 0x10000;\n          if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }\n        }" ({ "{") (expression_statement "uVar16 = (uVar19 & 0xff0000) >> 8;" (assignment_expression "uVar16 = (uVar19 & 0xff0000) >> 8" (identifier "uVar16") (= "=") (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" (( "(") (binary_expression "uVar19 & 0xff0000" (identifier "uVar19") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (; ";")) (expression_statement "uVar36 = uVar19 >> 0x18 | uVar16;" (assignment_expression "uVar36 = uVar19 >> 0x18 | uVar16" (identifier "uVar36") (= "=") (binary_expression "uVar19 >> 0x18 | uVar16" (binary_expression "uVar19 >> 0x18" (identifier "uVar19") (>> ">>") (number_literal "0x18")) (| "|") (identifier "uVar16"))) (; ";")) (expression_statement "uVar17 = uVar36 - 0x10000;" (assignment_expression "uVar17 = uVar36 - 0x10000" (identifier "uVar17") (= "=") (binary_expression "uVar36 - 0x10000" (identifier "uVar36") (- "-") (number_literal "0x10000"))) (; ";")) (if_statement "if ((uVar16 & 0x8000) == 0) {\n            uVar17 = uVar36;\n          }" (if "if") (parenthesized_expression "((uVar16 & 0x8000) == 0)" (( "(") (binary_expression "(uVar16 & 0x8000) == 0" (parenthesized_expression "(uVar16 & 0x8000)" (( "(") (binary_expression "uVar16 & 0x8000" (identifier "uVar16") (& "&") (number_literal "0x8000")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            uVar17 = uVar36;\n          }" ({ "{") (expression_statement "uVar17 = uVar36;" (assignment_expression "uVar17 = uVar36" (identifier "uVar17") (= "=") (identifier "uVar36")) (; ";")) (} "}"))) (} "}"))) (expression_statement "FUN_001d7270(param_9,plVar3,uVar17);" (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar17)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar17") () ")"))) (; ";")) (if_statement "if (!bVar49 || !bVar50) {\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }" (if "if") (parenthesized_expression "(!bVar49 || !bVar50)" (( "(") (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" (! "!") (identifier "bVar49")) (|| "||") (unary_expression "!bVar50" (! "!") (identifier "bVar50"))) () ")")) (compound_statement "{\n          uVar19 = uVar19 & 0xffff;\n          puVar37 = param_10;\n          goto LAB_002c5c85;\n        }" ({ "{") (expression_statement "uVar19 = uVar19 & 0xffff;" (assignment_expression "uVar19 = uVar19 & 0xffff" (identifier "uVar19") (= "=") (binary_expression "uVar19 & 0xffff" (identifier "uVar19") (& "&") (number_literal "0xffff"))) (; ";")) (expression_statement "puVar37 = param_10;" (assignment_expression "puVar37 = param_10" (identifier "puVar37") (= "=") (identifier "param_10")) (; ";")) (goto_statement "goto LAB_002c5c85;" (goto "goto") (statement_identifier "LAB_002c5c85") (; ";")) (} "}"))) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint *)param_1 = 0;" (assignment_expression "*(uint *)param_1 = 0" (pointer_expression "*(uint *)param_1" (* "*") (cast_expression "(uint *)param_1" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (= "=") (number_literal "0")) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x25:" (case "case") (number_literal "0x25") (: ":")) (case_statement "case 0x9c:\n        bVar48 = false;\nswitchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }\n        uVar36 = (uint)*param_10;\n        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;\n        uVar36 = uVar16;\n        if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }\n        if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }\n        break;" (case "case") (number_literal "0x9c") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_25:\n        if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }" (statement_identifier "switchD_002c5379_caseD_25") (: ":") (if_statement "if (param_8 != (undefined8 *)0x0) {\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }" (if "if") (parenthesized_expression "(param_8 != (undefined8 *)0x0)" (( "(") (binary_expression "param_8 != (undefined8 *)0x0" (identifier "param_8") (!= "!=") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);\n          if (cVar13 == '\0') break;\n          cVar13 = *(char *)((long)param_1 + 4);\n        }" ({ "{") (expression_statement "cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);" (assignment_expression "cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1)" (identifier "cVar13") (= "=") (call_expression "FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1)" (identifier "FUN_0028d190") (argument_list "(param_8,*(int *)(param_8 + 4) != 0,1)" (( "(") (identifier "param_8") (, ",") (binary_expression "*(int *)(param_8 + 4) != 0" (pointer_expression "*(int *)(param_8 + 4)" (* "*") (cast_expression "(int *)(param_8 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 4)" (( "(") (binary_expression "param_8 + 4" (identifier "param_8") (+ "+") (number_literal "4")) () ")")))) (!= "!=") (number_literal "0")) (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (cVar13 == '\0') break;" (if "if") (parenthesized_expression "(cVar13 == '\0')" (( "(") (binary_expression "cVar13 == '\0'" (identifier "cVar13") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "cVar13 = *(char *)((long)param_1 + 4);" (assignment_expression "cVar13 = *(char *)((long)param_1 + 4)" (identifier "cVar13") (= "=") (pointer_expression "*(char *)((long)param_1 + 4)" (* "*") (cast_expression "(char *)((long)param_1 + 4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_1 + 4)" (( "(") (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_1")) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (} "}")))) (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" (identifier "uVar36") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18\n        ;" (assignment_expression "uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (identifier "uVar16") (= "=") (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" (identifier "uVar36") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" (( "(") (binary_expression "uVar36 & 0xff0000" (identifier "uVar36") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "uVar36 = uVar16;" (assignment_expression "uVar36 = uVar16" (identifier "uVar36") (= "=") (identifier "uVar16")) (; ";")) (if_statement "if (((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }" (if "if") (parenthesized_expression "(((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809))))" (( "(") (binary_expression "((uVar17 == 0x25) && (local_e3 != 1)) &&\n           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))" (parenthesized_expression "((uVar17 == 0x25) && (local_e3 != 1))" (( "(") (binary_expression "(uVar17 == 0x25) && (local_e3 != 1)" (parenthesized_expression "(uVar17 == 0x25)" (( "(") (binary_expression "uVar17 == 0x25" (identifier "uVar17") (== "==") (number_literal "0x25")) () ")")) (&& "&&") (parenthesized_expression "(local_e3 != 1)" (( "(") (binary_expression "local_e3 != 1" (identifier "local_e3") (!= "!=") (number_literal "1")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))" (( "(") (parenthesized_expression "(uVar16 == 0x3200008 || (uVar16 == 0x320f809))" (( "(") (binary_expression "uVar16 == 0x3200008 || (uVar16 == 0x320f809)" (binary_expression "uVar16 == 0x3200008" (identifier "uVar16") (== "==") (number_literal "0x3200008")) (|| "||") (parenthesized_expression "(uVar16 == 0x320f809)" (( "(") (binary_expression "uVar16 == 0x320f809" (identifier "uVar16") (== "==") (number_literal "0x320f809")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n          iVar38 = FUN_001d7270(param_9,plVar3);\n          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }\n        }" ({ "{") (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") () ")")))) (; ";")) (if_statement "if ((iVar38 - param_11) + 0x1fffc < 0x40000) {\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }" (if "if") (parenthesized_expression "((iVar38 - param_11) + 0x1fffc < 0x40000)" (( "(") (binary_expression "(iVar38 - param_11) + 0x1fffc < 0x40000" (binary_expression "(iVar38 - param_11) + 0x1fffc" (parenthesized_expression "(iVar38 - param_11)" (( "(") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) () ")")) (+ "+") (number_literal "0x1fffc")) (< "<") (number_literal "0x40000")) () ")")) (compound_statement "{\n            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;\n            uVar36 = uVar17 | 0x10000000;\n            if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }\n          }" ({ "{") (expression_statement "uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;" (assignment_expression "uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff" (identifier "uVar17") (= "=") (binary_expression "(iVar38 - param_11) - 4 >> 2 & 0xffff" (binary_expression "(iVar38 - param_11) - 4 >> 2" (binary_expression "(iVar38 - param_11) - 4" (parenthesized_expression "(iVar38 - param_11)" (( "(") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) () ")")) (- "-") (number_literal "4")) (>> ">>") (number_literal "2")) (& "&") (number_literal "0xffff"))) (; ";")) (expression_statement "uVar36 = uVar17 | 0x10000000;" (assignment_expression "uVar36 = uVar17 | 0x10000000" (identifier "uVar36") (= "=") (binary_expression "uVar17 | 0x10000000" (identifier "uVar17") (| "|") (number_literal "0x10000000"))) (; ";")) (if_statement "if (uVar16 != 0x3200008) {\n              uVar36 = uVar17 | 0x4110000;\n            }" (if "if") (parenthesized_expression "(uVar16 != 0x3200008)" (( "(") (binary_expression "uVar16 != 0x3200008" (identifier "uVar16") (!= "!=") (number_literal "0x3200008")) () ")")) (compound_statement "{\n              uVar36 = uVar17 | 0x4110000;\n            }" ({ "{") (expression_statement "uVar36 = uVar17 | 0x4110000;" (assignment_expression "uVar36 = uVar17 | 0x4110000" (identifier "uVar36") (= "=") (binary_expression "uVar17 | 0x4110000" (identifier "uVar17") (| "|") (number_literal "0x4110000"))) (; ";")) (} "}"))) (} "}"))) (} "}"))) (if_statement "if (cVar13 == '\0') {\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }\n        else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }" (if "if") (parenthesized_expression "(cVar13 == '\0')" (( "(") (binary_expression "cVar13 == '\0'" (identifier "cVar13") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          uVar16 = 0;\n          *(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;\n        }" ({ "{") (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;" (assignment_expression "*(uint *)param_10 =\n               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" (identifier "uVar36") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" (( "(") (binary_expression "uVar36 & 0xff0000" (identifier "uVar36") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18")))) (; ";")) (} "}")) (else_clause "else {\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }" (else "else") (compound_statement "{\n          *(uint *)param_1 = uVar36;\n          uVar16 = 0;\n        }" ({ "{") (expression_statement "*(uint *)param_1 = uVar36;" (assignment_expression "*(uint *)param_1 = uVar36" (pointer_expression "*(uint *)param_1" (* "*") (cast_expression "(uint *)param_1" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (= "=") (identifier "uVar36")) (; ";")) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (} "}")))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x27:" (case "case") (number_literal "0x27") (: ":")) (case_statement "case 0x29:\n        bVar48 = false;\nswitchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x8000;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;" (case "case") (number_literal "0x29") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_27:\n        uVar17 = (uint)*param_10;" (statement_identifier "switchD_002c5379_caseD_27") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;" (assignment_expression "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (identifier "uVar17") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar17 << 0x18" (identifier "uVar17") (<< "<<") (number_literal "0x18")))) (; ";")) (if_statement "if (bVar48 == false) {\n          uVar17 = local_c8;\n        }" (if "if") (parenthesized_expression "(bVar48 == false)" (( "(") (binary_expression "bVar48 == false" (identifier "bVar48") (== "==") (false "false")) () ")")) (compound_statement "{\n          uVar17 = local_c8;\n        }" ({ "{") (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" (identifier "uVar17") (= "=") (identifier "local_c8")) (; ";")) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar17)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar17)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar17") () ")")))) (; ";")) (expression_statement "uVar19 = iVar38 - 0x8000;" (assignment_expression "uVar19 = iVar38 - 0x8000" (identifier "uVar19") (= "=") (binary_expression "iVar38 - 0x8000" (identifier "iVar38") (- "-") (number_literal "0x8000"))) (; ";")) (if_statement "if (!bVar49 || !bVar50) goto LAB_002c5ccb;" (if "if") (parenthesized_expression "(!bVar49 || !bVar50)" (( "(") (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" (! "!") (identifier "bVar49")) (|| "||") (unary_expression "!bVar50" (! "!") (identifier "bVar50"))) () ")")) (goto_statement "goto LAB_002c5ccb;" (goto "goto") (statement_identifier "LAB_002c5ccb") (; ";"))) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (case_statement "case 0x2a:" (case "case") (number_literal "0x2a") (: ":")) (case_statement "case 0x6a:" (case "case") (number_literal "0x6a") (: ":")) (case_statement "case 0xa2:\n        bVar48 = false;\nswitchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }\n        FUN_00290a70();\n        goto LAB_002c83ab;" (case "case") (number_literal "0xa2") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_2a:\n        lVar30 = *(long *)(param_4 + 0x20);" (statement_identifier "switchD_002c5379_caseD_2a") (: ":") (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";"))) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }\n        else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }" (if "if") (parenthesized_expression "(param_8 == (undefined8 *)0x0)" (( "(") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          if (lVar30 == 0) goto LAB_002c832e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);\nLAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);\n          if (lVar30 != 0) goto LAB_002c5c62;\n          FUN_00290a70();\n        }" ({ "{") (if_statement "if (lVar30 == 0) goto LAB_002c832e;" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c832e;" (goto "goto") (statement_identifier "LAB_002c832e") (; ";"))) (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8)" (identifier "local_e8") (= "=") (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" (( "(") (pointer_expression "**(code **)(*plVar3 + 0x160)" (* "*") (pointer_expression "*(code **)(*plVar3 + 0x160)" (* "*") (cast_expression "(code **)(*plVar3 + 0x160)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*plVar3 + 0x160)" (( "(") (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" (* "*") (identifier "plVar3")) (+ "+") (number_literal "0x160")) () ")"))))) () ")")) (argument_list "(plVar3,uVar7,2,(long)(int)local_c8)" (( "(") (identifier "plVar3") (, ",") (identifier "uVar7") (, ",") (number_literal "2") (, ",") (cast_expression "(long)(int)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (cast_expression "(int)local_c8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_c8"))) () ")")))) (; ";")) (labeled_statement "LAB_002c5c48:\n          lVar30 = *(long *)(param_4 + 0x20);" (statement_identifier "LAB_002c5c48") (: ":") (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";"))) (if_statement "if (lVar30 != 0) goto LAB_002c5c62;" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c5c62;" (goto "goto") (statement_identifier "LAB_002c5c62") (; ";"))) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }" (else "else") (if_statement "if (lVar30 != 0) {\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);\n          goto LAB_002c5c48;\n        }" ({ "{") (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3)" (identifier "local_e8") (= "=") (call_expression "FUN_0029b910(lVar30,param_8,2,plVar3)" (identifier "FUN_0029b910") (argument_list "(lVar30,param_8,2,plVar3)" (( "(") (identifier "lVar30") (, ",") (identifier "param_8") (, ",") (number_literal "2") (, ",") (identifier "plVar3") () ")")))) (; ";")) (goto_statement "goto LAB_002c5c48;" (goto "goto") (statement_identifier "LAB_002c5c48") (; ";")) (} "}"))))) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto LAB_002c83ab;" (goto "goto") (statement_identifier "LAB_002c83ab") (; ";"))) (case_statement "case 0x2b:" (case "case") (number_literal "0x2b") (: ":")) (case_statement "case 0x6b:" (case "case") (number_literal "0x6b") (: ":")) (case_statement "case 0xa3:\n        bVar48 = false;\nswitchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }\n        if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }\n        if (lVar24 == 0) goto LAB_002c828a;\n        local_e8 = *(uint *)(lVar24 + 0x14);\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\n        goto LAB_002c5c74;" (case "case") (number_literal "0xa3") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_2b:\n        lVar30 = *(long *)(param_4 + 0x20);" (statement_identifier "switchD_002c5379_caseD_2b") (: ":") (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";"))) (if_statement "if (lVar30 == 0) {\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          FUN_00290a70();\nLAB_002c8364:\n          FUN_00290a70();\n          goto LAB_002c8369;\n        }" ({ "{") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_002c8364:\n          FUN_00290a70();" (statement_identifier "LAB_002c8364") (: ":") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";"))) (goto_statement "goto LAB_002c8369;" (goto "goto") (statement_identifier "LAB_002c8369") (; ";")) (} "}"))) (if_statement "if (*(long *)(lVar30 + 0xd0) == 0) {\n          lVar24 = *(long *)(lVar30 + 200);\n        }\n        else {\n          lVar24 = plVar3[0x6e];\n        }" (if "if") (parenthesized_expression "(*(long *)(lVar30 + 0xd0) == 0)" (( "(") (binary_expression "*(long *)(lVar30 + 0xd0) == 0" (pointer_expression "*(long *)(lVar30 + 0xd0)" (* "*") (cast_expression "(long *)(lVar30 + 0xd0)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0xd0)" (( "(") (binary_expression "lVar30 + 0xd0" (identifier "lVar30") (+ "+") (number_literal "0xd0")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          lVar24 = *(long *)(lVar30 + 200);\n        }" ({ "{") (expression_statement "lVar24 = *(long *)(lVar30 + 200);" (assignment_expression "lVar24 = *(long *)(lVar30 + 200)" (identifier "lVar24") (= "=") (pointer_expression "*(long *)(lVar30 + 200)" (* "*") (cast_expression "(long *)(lVar30 + 200)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 200)" (( "(") (binary_expression "lVar30 + 200" (identifier "lVar30") (+ "+") (number_literal "200")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n          lVar24 = plVar3[0x6e];\n        }" (else "else") (compound_statement "{\n          lVar24 = plVar3[0x6e];\n        }" ({ "{") (expression_statement "lVar24 = plVar3[0x6e];" (assignment_expression "lVar24 = plVar3[0x6e]" (identifier "lVar24") (= "=") (subscript_expression "plVar3[0x6e]" (identifier "plVar3") ([ "[") (number_literal "0x6e") (] "]"))) (; ";")) (} "}")))) (if_statement "if (lVar24 == 0) goto LAB_002c828a;" (if "if") (parenthesized_expression "(lVar24 == 0)" (( "(") (binary_expression "lVar24 == 0" (identifier "lVar24") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c828a;" (goto "goto") (statement_identifier "LAB_002c828a") (; ";"))) (expression_statement "local_e8 = *(uint *)(lVar24 + 0x14);" (assignment_expression "local_e8 = *(uint *)(lVar24 + 0x14)" (identifier "local_e8") (= "=") (pointer_expression "*(uint *)(lVar24 + 0x14)" (* "*") (cast_expression "(uint *)(lVar24 + 0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar24 + 0x14)" (( "(") (binary_expression "lVar24 + 0x14" (identifier "lVar24") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (expression_statement "uVar19 = FUN_00292520(lVar30,local_e8,plVar3);" (assignment_expression "uVar19 = FUN_00292520(lVar30,local_e8,plVar3)" (identifier "uVar19") (= "=") (call_expression "FUN_00292520(lVar30,local_e8,plVar3)" (identifier "FUN_00292520") (argument_list "(lVar30,local_e8,plVar3)" (( "(") (identifier "lVar30") (, ",") (identifier "local_e8") (, ",") (identifier "plVar3") () ")")))) (; ";")) (goto_statement "goto LAB_002c5c74;" (goto "goto") (statement_identifier "LAB_002c5c74") (; ";"))) (case_statement "case 0x2c:" (case "case") (number_literal "0x2c") (: ":")) (case_statement "case 0x6c:" (case "case") (number_literal "0x6c") (: ":")) (case_statement "case 0xa4:\n        bVar48 = false;\nswitchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);\n        goto LAB_002c5a76;" (case "case") (number_literal "0xa4") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_2c:\n        uVar17 = (uint)*param_10;" (statement_identifier "switchD_002c5379_caseD_2c") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" (identifier "uVar16") (= "=") (identifier "uVar36")) (; ";")) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" (if "if") (parenthesized_expression "(bVar48 == false)" (( "(") (binary_expression "bVar48 == false" (identifier "bVar48") (== "==") (false "false")) () ")")) (compound_statement "{\n          uVar16 = local_c8;\n        }" ({ "{") (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" (identifier "uVar16") (= "=") (identifier "local_c8")) (; ";")) (} "}"))) (expression_statement "uVar19 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar19 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "uVar19") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (goto_statement "goto LAB_002c5a76;" (goto "goto") (statement_identifier "LAB_002c5a76") (; ";"))) (case_statement "case 0x2d:" (case "case") (number_literal "0x2d") (: ":")) (case_statement "case 0x6d:" (case "case") (number_literal "0x6d") (: ":")) (case_statement "case 0xa5:\nswitchD_002c4f87_caseD_2d:\n        bVar48 = false;\nswitchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x8000;\n        goto joined_r0x002c59a3;" (case "case") (number_literal "0xa5") (: ":") (labeled_statement "switchD_002c4f87_caseD_2d:\n        bVar48 = false;" (statement_identifier "switchD_002c4f87_caseD_2d") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";"))) (labeled_statement "switchD_002c5379_caseD_2d:\n        uVar17 = (uint)*param_10;" (statement_identifier "switchD_002c5379_caseD_2d") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" (identifier "uVar16") (= "=") (identifier "uVar36")) (; ";")) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" (if "if") (parenthesized_expression "(bVar48 == false)" (( "(") (binary_expression "bVar48 == false" (identifier "bVar48") (== "==") (false "false")) () ")")) (compound_statement "{\n          uVar16 = local_c8;\n        }" ({ "{") (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" (identifier "uVar16") (= "=") (identifier "local_c8")) (; ";")) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar19 = iVar38 - 0x8000;" (assignment_expression "uVar19 = iVar38 - 0x8000" (identifier "uVar19") (= "=") (binary_expression "iVar38 - 0x8000" (identifier "iVar38") (- "-") (number_literal "0x8000"))) (; ";")) (goto_statement "goto joined_r0x002c59a3;" (goto "goto") (statement_identifier "joined_r0x002c59a3") (; ";"))) (case_statement "case 0x2e:" (case "case") (number_literal "0x2e") (: ":")) (case_statement "case 0x6e:" (case "case") (number_literal "0x6e") (: ":")) (case_statement "case 0xa6:\n        bVar48 = false;\nswitchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }\n        lVar30 = *(long *)(param_4 + 0x20);\n        if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }\nLAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);\nLAB_002c5c74:\n        puVar37 = param_1;\n        if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }\n        break;" (case "case") (number_literal "0xa6") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_2e:\n        lVar30 = *(long *)(param_4 + 0x20);" (statement_identifier "switchD_002c5379_caseD_2e") (: ":") (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";"))) (if_statement "if (param_8 == (undefined8 *)0x0) {\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }\n        else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }" (if "if") (parenthesized_expression "(param_8 == (undefined8 *)0x0)" (( "(") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          if (lVar30 == 0) goto LAB_002c836e;\n          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);\n        }" ({ "{") (if_statement "if (lVar30 == 0) goto LAB_002c836e;" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c836e;" (goto "goto") (statement_identifier "LAB_002c836e") (; ";"))) (expression_statement "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);" (assignment_expression "local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8)" (identifier "local_e8") (= "=") (call_expression "(**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8)" (parenthesized_expression "(**(code **)(*plVar3 + 0x160))" (( "(") (pointer_expression "**(code **)(*plVar3 + 0x160)" (* "*") (pointer_expression "*(code **)(*plVar3 + 0x160)" (* "*") (cast_expression "(code **)(*plVar3 + 0x160)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*plVar3 + 0x160)" (( "(") (binary_expression "*plVar3 + 0x160" (pointer_expression "*plVar3" (* "*") (identifier "plVar3")) (+ "+") (number_literal "0x160")) () ")"))))) () ")")) (argument_list "(plVar3,uVar7,1,(long)(int)local_c8)" (( "(") (identifier "plVar3") (, ",") (identifier "uVar7") (, ",") (number_literal "1") (, ",") (cast_expression "(long)(int)local_c8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (cast_expression "(int)local_c8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_c8"))) () ")")))) (; ";")) (} "}")) (else_clause "else {\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }" (else "else") (compound_statement "{\n          if (lVar30 == 0) goto LAB_002c8338;\n          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);\n        }" ({ "{") (if_statement "if (lVar30 == 0) goto LAB_002c8338;" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c8338;" (goto "goto") (statement_identifier "LAB_002c8338") (; ";"))) (expression_statement "local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3)" (identifier "local_e8") (= "=") (call_expression "FUN_0029b910(lVar30,param_8,1,plVar3)" (identifier "FUN_0029b910") (argument_list "(lVar30,param_8,1,plVar3)" (( "(") (identifier "lVar30") (, ",") (identifier "param_8") (, ",") (number_literal "1") (, ",") (identifier "plVar3") () ")")))) (; ";")) (} "}")))) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (if_statement "if (lVar30 == 0) {\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          FUN_00290a70();\n          goto switchD_002c4f87_caseD_2d;\n        }" ({ "{") (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto switchD_002c4f87_caseD_2d;" (goto "goto") (statement_identifier "switchD_002c4f87_caseD_2d") (; ";")) (} "}"))) (labeled_statement "LAB_002c5c62:\n        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);" (statement_identifier "LAB_002c5c62") (: ":") (expression_statement "uVar19 = FUN_00292520(lVar30,local_e8,plVar3);" (assignment_expression "uVar19 = FUN_00292520(lVar30,local_e8,plVar3)" (identifier "uVar19") (= "=") (call_expression "FUN_00292520(lVar30,local_e8,plVar3)" (identifier "FUN_00292520") (argument_list "(lVar30,local_e8,plVar3)" (( "(") (identifier "lVar30") (, ",") (identifier "local_e8") (, ",") (identifier "plVar3") () ")")))) (; ";"))) (labeled_statement "LAB_002c5c74:\n        puVar37 = param_1;" (statement_identifier "LAB_002c5c74") (: ":") (expression_statement "puVar37 = param_1;" (assignment_expression "puVar37 = param_1" (identifier "puVar37") (= "=") (identifier "param_1")) (; ";"))) (if_statement "if (*(char *)((long)param_1 + 4) == '\0') {\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }\n        else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }" (if "if") (parenthesized_expression "(*(char *)((long)param_1 + 4) == '\0')" (( "(") (binary_expression "*(char *)((long)param_1 + 4) == '\0'" (pointer_expression "*(char *)((long)param_1 + 4)" (* "*") (cast_expression "(char *)((long)param_1 + 4)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_1 + 4)" (( "(") (binary_expression "(long)param_1 + 4" (cast_expression "(long)param_1" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_1")) (+ "+") (number_literal "4")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_002c6098:\n          uVar17 = (uint)*param_10;\n          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;\n          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;\nLAB_002c60ab:\n          *(uint *)param_10 = uVar17;\n          uVar16 = (uint)(0xffff < uVar19 + 0x8000);\n        }" ({ "{") (labeled_statement "LAB_002c6098:\n          uVar17 = (uint)*param_10;" (statement_identifier "LAB_002c6098") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;" (assignment_expression "uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19" (identifier "uVar36") (= "=") (binary_expression "(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19" (parenthesized_expression "(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8)" (( "(") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) () ")")) (^ "^") (identifier "uVar19"))) (; ";")) (expression_statement "uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;" (assignment_expression "uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (identifier "uVar17") (= "=") (binary_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17" (parenthesized_expression "((uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (( "(") (binary_expression "(uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18"))) () ")")) (^ "^") (identifier "uVar17"))) (; ";")) (labeled_statement "LAB_002c60ab:\n          *(uint *)param_10 = uVar17;" (statement_identifier "LAB_002c60ab") (: ":") (expression_statement "*(uint *)param_10 = uVar17;" (assignment_expression "*(uint *)param_10 = uVar17" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (identifier "uVar17")) (; ";"))) (expression_statement "uVar16 = (uint)(0xffff < uVar19 + 0x8000);" (assignment_expression "uVar16 = (uint)(0xffff < uVar19 + 0x8000)" (identifier "uVar16") (= "=") (call_expression "(uint)(0xffff < uVar19 + 0x8000)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0xffff < uVar19 + 0x8000)" (( "(") (binary_expression "0xffff < uVar19 + 0x8000" (number_literal "0xffff") (< "<") (binary_expression "uVar19 + 0x8000" (identifier "uVar19") (+ "+") (number_literal "0x8000"))) () ")")))) (; ";")) (} "}")) (else_clause "else {\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }" (else "else") (compound_statement "{\nLAB_002c5c85:\n          *(uint *)puVar37 = uVar19;\nLAB_002c5c87:\n          uVar16 = 0;\n        }" ({ "{") (labeled_statement "LAB_002c5c85:\n          *(uint *)puVar37 = uVar19;" (statement_identifier "LAB_002c5c85") (: ":") (expression_statement "*(uint *)puVar37 = uVar19;" (assignment_expression "*(uint *)puVar37 = uVar19" (pointer_expression "*(uint *)puVar37" (* "*") (cast_expression "(uint *)puVar37" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar37"))) (= "=") (identifier "uVar19")) (; ";"))) (labeled_statement "LAB_002c5c87:\n          uVar16 = 0;" (statement_identifier "LAB_002c5c87") (: ":") (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";"))) (} "}")))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x2f:" (case "case") (number_literal "0x2f") (: ":")) (case_statement "case 0x30:\n        bVar48 = false;\nswitchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        if (bVar48 == false) {\n          uVar17 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - 0x7000;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;\n        break;" (case "case") (number_literal "0x30") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_2f:\n        uVar17 = (uint)*param_10;" (statement_identifier "switchD_002c5379_caseD_2f") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;" (assignment_expression "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (identifier "uVar17") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar17 << 0x18" (identifier "uVar17") (<< "<<") (number_literal "0x18")))) (; ";")) (if_statement "if (bVar48 == false) {\n          uVar17 = local_c8;\n        }" (if "if") (parenthesized_expression "(bVar48 == false)" (( "(") (binary_expression "bVar48 == false" (identifier "bVar48") (== "==") (false "false")) () ")")) (compound_statement "{\n          uVar17 = local_c8;\n        }" ({ "{") (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" (identifier "uVar17") (= "=") (identifier "local_c8")) (; ";")) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar17)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar17)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar17") () ")")))) (; ";")) (expression_statement "uVar19 = iVar38 - 0x7000;" (assignment_expression "uVar19 = iVar38 - 0x7000" (identifier "uVar19") (= "=") (binary_expression "iVar38 - 0x7000" (identifier "iVar38") (- "-") (number_literal "0x7000"))) (; ";")) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;" (assignment_expression "*(uint *)param_10 =\n             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18" (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8" (binary_expression "uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8" (binary_expression "uVar19 >> 0x18" (identifier "uVar19") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar19 & 0xff0000) >> 8" (parenthesized_expression "(uVar19 & 0xff0000)" (( "(") (binary_expression "uVar19 & 0xff0000" (identifier "uVar19") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" (( "(") (binary_expression "uVar19 & 0xff00" (identifier "uVar19") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "iVar38 << 0x18" (identifier "iVar38") (<< "<<") (number_literal "0x18")))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x31:" (case "case") (number_literal "0x31") (: ":")) (case_statement "case 0x6f:" (case "case") (number_literal "0x6f") (: ":")) (case_statement "case 0xa9:\n        bVar48 = false;\nswitchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 + 0x1000;\nLAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;\n        goto joined_r0x002c59a3;" (case "case") (number_literal "0xa9") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_31:\n        uVar17 = (uint)*param_10;" (statement_identifier "switchD_002c5379_caseD_31") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" (identifier "uVar16") (= "=") (identifier "uVar36")) (; ";")) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" (if "if") (parenthesized_expression "(bVar48 == false)" (( "(") (binary_expression "bVar48 == false" (identifier "bVar48") (== "==") (false "false")) () ")")) (compound_statement "{\n          uVar16 = local_c8;\n        }" ({ "{") (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" (identifier "uVar16") (= "=") (identifier "local_c8")) (; ";")) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar19 = iVar38 + 0x1000;" (assignment_expression "uVar19 = iVar38 + 0x1000" (identifier "uVar19") (= "=") (binary_expression "iVar38 + 0x1000" (identifier "iVar38") (+ "+") (number_literal "0x1000"))) (; ";")) (labeled_statement "LAB_002c5a76:\n        uVar19 = uVar19 >> 0x10;" (statement_identifier "LAB_002c5a76") (: ":") (expression_statement "uVar19 = uVar19 >> 0x10;" (assignment_expression "uVar19 = uVar19 >> 0x10" (identifier "uVar19") (= "=") (binary_expression "uVar19 >> 0x10" (identifier "uVar19") (>> ">>") (number_literal "0x10"))) (; ";"))) (goto_statement "goto joined_r0x002c59a3;" (goto "goto") (statement_identifier "joined_r0x002c59a3") (; ";"))) (case_statement "case 0x32:" (case "case") (number_literal "0x32") (: ":")) (case_statement "case 0x70:" (case "case") (number_literal "0x70") (: ":")) (case_statement "case 0xaa:\n        bVar48 = false;\nswitchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = uVar36;\n        if (bVar48 == false) {\n          uVar16 = local_c8;\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - 0x7000;\njoined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }\n        break;" (case "case") (number_literal "0xaa") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_32:\n        uVar17 = (uint)*param_10;" (statement_identifier "switchD_002c5379_caseD_32") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "uVar16 = uVar36;" (assignment_expression "uVar16 = uVar36" (identifier "uVar16") (= "=") (identifier "uVar36")) (; ";")) (if_statement "if (bVar48 == false) {\n          uVar16 = local_c8;\n        }" (if "if") (parenthesized_expression "(bVar48 == false)" (( "(") (binary_expression "bVar48 == false" (identifier "bVar48") (== "==") (false "false")) () ")")) (compound_statement "{\n          uVar16 = local_c8;\n        }" ({ "{") (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" (identifier "uVar16") (= "=") (identifier "local_c8")) (; ";")) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar19 = iVar38 - 0x7000;" (assignment_expression "uVar19 = iVar38 - 0x7000" (identifier "uVar19") (= "=") (binary_expression "iVar38 - 0x7000" (identifier "iVar38") (- "-") (number_literal "0x7000"))) (; ";")) (labeled_statement "joined_r0x002c59a3:\n        if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }" (statement_identifier "joined_r0x002c59a3") (: ":") (if_statement "if (bVar49 && bVar50) {\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }" (if "if") (parenthesized_expression "(bVar49 && bVar50)" (( "(") (binary_expression "bVar49 && bVar50" (identifier "bVar49") (&& "&&") (identifier "bVar50")) () ")")) (compound_statement "{\nLAB_002c59a8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }" ({ "{") (labeled_statement "LAB_002c59a8:\n          uVar16 = 0;" (statement_identifier "LAB_002c59a8") (: ":") (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";"))) (expression_statement "*(uint *)param_1 = uVar19;" (assignment_expression "*(uint *)param_1 = uVar19" (pointer_expression "*(uint *)param_1" (* "*") (cast_expression "(uint *)param_1" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (= "=") (identifier "uVar19")) (; ";")) (} "}")) (else_clause "else {\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }" (else "else") (compound_statement "{\n          *(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);\n          uVar16 = 0;\n        }" ({ "{") (expression_statement "*(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);" (assignment_expression "*(uint *)param_10 =\n               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18)" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18)" (identifier "uVar17") (^ "^") (parenthesized_expression "(((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18)" (( "(") (binary_expression "((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18" (binary_expression "((uVar19 ^ uVar36) & 0xff00) << 8" (parenthesized_expression "((uVar19 ^ uVar36) & 0xff00)" (( "(") (binary_expression "(uVar19 ^ uVar36) & 0xff00" (parenthesized_expression "(uVar19 ^ uVar36)" (( "(") (binary_expression "uVar19 ^ uVar36" (identifier "uVar19") (^ "^") (identifier "uVar36")) () ")")) (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "(uVar19 ^ uVar36) << 0x18" (parenthesized_expression "(uVar19 ^ uVar36)" (( "(") (binary_expression "uVar19 ^ uVar36" (identifier "uVar19") (^ "^") (identifier "uVar36")) () ")")) (<< "<<") (number_literal "0x18"))) () ")")))) (; ";")) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (} "}"))))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x3c:\n        bVar48 = false;\nLAB_002c6f06:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }\n        break;" (case "case") (number_literal "0x3c") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_002c6f06:\n        uVar17 = (uint)*param_10;" (statement_identifier "LAB_002c6f06") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")))) (; ";")) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" (identifier "uVar16") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x7ffffc;\n          uVar16 = uVar45 - 0x800000;\n          if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" ({ "{") (expression_statement "uVar19 = uVar36 * 4;" (assignment_expression "uVar19 = uVar36 * 4" (identifier "uVar19") (= "=") (binary_expression "uVar36 * 4" (identifier "uVar36") (* "*") (number_literal "4"))) (; ";")) (expression_statement "uVar45 = uVar19 & 0x7ffffc;" (assignment_expression "uVar45 = uVar19 & 0x7ffffc" (identifier "uVar45") (= "=") (binary_expression "uVar19 & 0x7ffffc" (identifier "uVar19") (& "&") (number_literal "0x7ffffc"))) (; ";")) (expression_statement "uVar16 = uVar45 - 0x800000;" (assignment_expression "uVar16 = uVar45 - 0x800000" (identifier "uVar16") (= "=") (binary_expression "uVar45 - 0x800000" (identifier "uVar45") (- "-") (number_literal "0x800000"))) (; ";")) (if_statement "if ((uVar19 & 0x400000) == 0) {\n            uVar16 = uVar45;\n          }" (if "if") (parenthesized_expression "((uVar19 & 0x400000) == 0)" (( "(") (binary_expression "(uVar19 & 0x400000) == 0" (parenthesized_expression "(uVar19 & 0x400000)" (( "(") (binary_expression "uVar19 & 0x400000" (identifier "uVar19") (& "&") (number_literal "0x400000")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            uVar16 = uVar45;\n          }" ({ "{") (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" (identifier "uVar16") (= "=") (identifier "uVar45")) (; ";")) (} "}"))) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar19 = iVar38 - param_11 >> 2;" (assignment_expression "uVar19 = iVar38 - param_11 >> 2" (identifier "uVar19") (= "=") (binary_expression "iVar38 - param_11 >> 2" (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) (>> ">>") (number_literal "2"))) (; ";")) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" (identifier "uVar36") (= "=") (binary_expression "uVar36 ^ uVar19" (identifier "uVar36") (^ "^") (identifier "uVar19"))) (; ";")) (expression_statement "*(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);" (assignment_expression "*(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (identifier "uVar17") (^ "^") (parenthesized_expression "((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (( "(") (binary_expression "(uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "(uVar36 & 0x1f0000) >> 8" (parenthesized_expression "(uVar36 & 0x1f0000)" (( "(") (binary_expression "uVar36 & 0x1f0000" (identifier "uVar36") (& "&") (number_literal "0x1f0000")) () ")")) (>> ">>") (number_literal "8")) (| "|") (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18"))) () ")")))) (; ";")) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "uVar34") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar16 = 3;" (assignment_expression "uVar16 = 3" (identifier "uVar16") (= "=") (number_literal "3")) (; ";")) (if_statement "if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }" (if "if") (parenthesized_expression "((uVar34 & 3) == 0)" (( "(") (binary_expression "(uVar34 & 3) == 0" (parenthesized_expression "(uVar34 & 3)" (( "(") (binary_expression "uVar34 & 3" (identifier "uVar34") (& "&") (number_literal "3")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);\n        }" ({ "{") (expression_statement "uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);" (assignment_expression "uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000)" (identifier "uVar16") (= "=") (call_expression "(uint)(0x7fffff < (iVar38 - param_11) + 0x400000)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0x7fffff < (iVar38 - param_11) + 0x400000)" (( "(") (binary_expression "0x7fffff < (iVar38 - param_11) + 0x400000" (number_literal "0x7fffff") (< "<") (binary_expression "(iVar38 - param_11) + 0x400000" (parenthesized_expression "(iVar38 - param_11)" (( "(") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) () ")")) (+ "+") (number_literal "0x400000"))) () ")")))) (; ";")) (} "}"))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x3d:\n        bVar48 = false;\nLAB_002c6fd2:\n        uVar17 = (uint)*param_10;\n        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 2;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = uVar16 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar16 = 3;\n        if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }\n        break;" (case "case") (number_literal "0x3d") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_002c6fd2:\n        uVar17 = (uint)*param_10;" (statement_identifier "LAB_002c6fd2") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;" (assignment_expression "uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (identifier "uVar16") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar17 << 0x18" (identifier "uVar17") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" (identifier "uVar36") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n          uVar19 = uVar16 * 4;\n          uVar45 = uVar19 & 0xffffffc;\n          uVar36 = uVar45 + 0xf0000000;\n          if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }\n        }" ({ "{") (expression_statement "uVar19 = uVar16 * 4;" (assignment_expression "uVar19 = uVar16 * 4" (identifier "uVar19") (= "=") (binary_expression "uVar16 * 4" (identifier "uVar16") (* "*") (number_literal "4"))) (; ";")) (expression_statement "uVar45 = uVar19 & 0xffffffc;" (assignment_expression "uVar45 = uVar19 & 0xffffffc" (identifier "uVar45") (= "=") (binary_expression "uVar19 & 0xffffffc" (identifier "uVar19") (& "&") (number_literal "0xffffffc"))) (; ";")) (expression_statement "uVar36 = uVar45 + 0xf0000000;" (assignment_expression "uVar36 = uVar45 + 0xf0000000" (identifier "uVar36") (= "=") (binary_expression "uVar45 + 0xf0000000" (identifier "uVar45") (+ "+") (number_literal "0xf0000000"))) (; ";")) (if_statement "if ((uVar19 & 0x8000000) == 0) {\n            uVar36 = uVar45;\n          }" (if "if") (parenthesized_expression "((uVar19 & 0x8000000) == 0)" (( "(") (binary_expression "(uVar19 & 0x8000000) == 0" (parenthesized_expression "(uVar19 & 0x8000000)" (( "(") (binary_expression "uVar19 & 0x8000000" (identifier "uVar19") (& "&") (number_literal "0x8000000")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            uVar36 = uVar45;\n          }" ({ "{") (expression_statement "uVar36 = uVar45;" (assignment_expression "uVar36 = uVar45" (identifier "uVar36") (= "=") (identifier "uVar45")) (; ";")) (} "}"))) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar36)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar36)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar36") () ")")))) (; ";")) (expression_statement "uVar19 = iVar38 - param_11 >> 2;" (assignment_expression "uVar19 = iVar38 - param_11 >> 2" (identifier "uVar19") (= "=") (binary_expression "iVar38 - param_11 >> 2" (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) (>> ">>") (number_literal "2"))) (; ";")) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (expression_statement "uVar16 = uVar16 ^ uVar19;" (assignment_expression "uVar16 = uVar16 ^ uVar19" (identifier "uVar16") (= "=") (binary_expression "uVar16 ^ uVar19" (identifier "uVar16") (^ "^") (identifier "uVar19"))) (; ";")) (expression_statement "*(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);" (assignment_expression "*(uint *)param_10 =\n             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18)" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18)" (identifier "uVar17") (^ "^") (parenthesized_expression "((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18)" (( "(") (binary_expression "(uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18" (binary_expression "(uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |\n                       (uVar16 & 0xff00) << 8" (binary_expression "(uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "(uVar16 & 0x3ffffff) >> 0x18" (parenthesized_expression "(uVar16 & 0x3ffffff)" (( "(") (binary_expression "uVar16 & 0x3ffffff" (identifier "uVar16") (& "&") (number_literal "0x3ffffff")) () ")")) (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" (( "(") (binary_expression "uVar16 & 0xff0000" (identifier "uVar16") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar16 & 0xff00) << 8" (parenthesized_expression "(uVar16 & 0xff00)" (( "(") (binary_expression "uVar16 & 0xff00" (identifier "uVar16") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "(uVar16 & 0x3ffffff) << 0x18" (parenthesized_expression "(uVar16 & 0x3ffffff)" (( "(") (binary_expression "uVar16 & 0x3ffffff" (identifier "uVar16") (& "&") (number_literal "0x3ffffff")) () ")")) (<< "<<") (number_literal "0x18"))) () ")")))) (; ";")) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar36)" (identifier "uVar34") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar36)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar36") () ")")))) (; ";")) (expression_statement "uVar16 = 3;" (assignment_expression "uVar16 = 3" (identifier "uVar16") (= "=") (number_literal "3")) (; ";")) (if_statement "if ((uVar34 & 3) == 0) {\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }" (if "if") (parenthesized_expression "((uVar34 & 3) == 0)" (( "(") (binary_expression "(uVar34 & 3) == 0" (parenthesized_expression "(uVar34 & 3)" (( "(") (binary_expression "uVar34 & 3" (identifier "uVar34") (& "&") (number_literal "3")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);\n        }" ({ "{") (expression_statement "uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);" (assignment_expression "uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000)" (identifier "uVar16") (= "=") (call_expression "(uint)(0xfffffff < (iVar38 - param_11) + 0x8000000)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0xfffffff < (iVar38 - param_11) + 0x8000000)" (( "(") (binary_expression "0xfffffff < (iVar38 - param_11) + 0x8000000" (number_literal "0xfffffff") (< "<") (binary_expression "(iVar38 - param_11) + 0x8000000" (parenthesized_expression "(iVar38 - param_11)" (( "(") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) () ")")) (+ "+") (number_literal "0x8000000"))) () ")")))) (; ";")) (} "}"))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x3e:\n        bVar48 = false;\nLAB_002c6d53:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - (param_11 & 0xfffffff8);\n        uVar19 = uVar45 >> 3;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar36 = uVar36 ^ uVar19;\n        *(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar34 = uVar34 & 7;\njoined_r0x002c6ec7:\n        uVar16 = 3;\n        if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }\n        break;" (case "case") (number_literal "0x3e") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_002c6d53:\n        uVar17 = (uint)*param_10;" (statement_identifier "LAB_002c6d53") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")))) (; ";")) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" (identifier "uVar16") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n          uVar19 = uVar36 * 8;\n          uVar45 = uVar19 & 0x1ffff8;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" ({ "{") (expression_statement "uVar19 = uVar36 * 8;" (assignment_expression "uVar19 = uVar36 * 8" (identifier "uVar19") (= "=") (binary_expression "uVar36 * 8" (identifier "uVar36") (* "*") (number_literal "8"))) (; ";")) (expression_statement "uVar45 = uVar19 & 0x1ffff8;" (assignment_expression "uVar45 = uVar19 & 0x1ffff8" (identifier "uVar45") (= "=") (binary_expression "uVar19 & 0x1ffff8" (identifier "uVar19") (& "&") (number_literal "0x1ffff8"))) (; ";")) (expression_statement "uVar16 = uVar45 - 0x200000;" (assignment_expression "uVar16 = uVar45 - 0x200000" (identifier "uVar16") (= "=") (binary_expression "uVar45 - 0x200000" (identifier "uVar45") (- "-") (number_literal "0x200000"))) (; ";")) (if_statement "if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }" (if "if") (parenthesized_expression "((uVar19 & 0x100000) == 0)" (( "(") (binary_expression "(uVar19 & 0x100000) == 0" (parenthesized_expression "(uVar19 & 0x100000)" (( "(") (binary_expression "uVar19 & 0x100000" (identifier "uVar19") (& "&") (number_literal "0x100000")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            uVar16 = uVar45;\n          }" ({ "{") (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" (identifier "uVar16") (= "=") (identifier "uVar45")) (; ";")) (} "}"))) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar45 = iVar38 - (param_11 & 0xfffffff8);" (assignment_expression "uVar45 = iVar38 - (param_11 & 0xfffffff8)" (identifier "uVar45") (= "=") (binary_expression "iVar38 - (param_11 & 0xfffffff8)" (identifier "iVar38") (- "-") (parenthesized_expression "(param_11 & 0xfffffff8)" (( "(") (binary_expression "param_11 & 0xfffffff8" (identifier "param_11") (& "&") (number_literal "0xfffffff8")) () ")")))) (; ";")) (expression_statement "uVar19 = uVar45 >> 3;" (assignment_expression "uVar19 = uVar45 >> 3" (identifier "uVar19") (= "=") (binary_expression "uVar45 >> 3" (identifier "uVar45") (>> ">>") (number_literal "3"))) (; ";")) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" (identifier "uVar36") (= "=") (binary_expression "uVar36 ^ uVar19" (identifier "uVar36") (^ "^") (identifier "uVar19"))) (; ";")) (expression_statement "*(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);" (assignment_expression "*(uint *)param_10 =\n             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (identifier "uVar17") (^ "^") (parenthesized_expression "((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (( "(") (binary_expression "(uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "(uVar36 & 0x30000) >> 8" (parenthesized_expression "(uVar36 & 0x30000)" (( "(") (binary_expression "uVar36 & 0x30000" (identifier "uVar36") (& "&") (number_literal "0x30000")) () ")")) (>> ">>") (number_literal "8")) (| "|") (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18"))) () ")")))) (; ";")) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "uVar34") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar34 = uVar34 & 7;" (assignment_expression "uVar34 = uVar34 & 7" (identifier "uVar34") (= "=") (binary_expression "uVar34 & 7" (identifier "uVar34") (& "&") (number_literal "7"))) (; ";")) (labeled_statement "joined_r0x002c6ec7:\n        uVar16 = 3;" (statement_identifier "joined_r0x002c6ec7") (: ":") (expression_statement "uVar16 = 3;" (assignment_expression "uVar16 = 3" (identifier "uVar16") (= "=") (number_literal "3")) (; ";"))) (if_statement "if (uVar34 == 0) {\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }" (if "if") (parenthesized_expression "(uVar34 == 0)" (( "(") (binary_expression "uVar34 == 0" (identifier "uVar34") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);\n        }" ({ "{") (expression_statement "uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);" (assignment_expression "uVar16 = (uint)(0x1fffff < uVar45 + 0x100000)" (identifier "uVar16") (= "=") (call_expression "(uint)(0x1fffff < uVar45 + 0x100000)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0x1fffff < uVar45 + 0x100000)" (( "(") (binary_expression "0x1fffff < uVar45 + 0x100000" (number_literal "0x1fffff") (< "<") (binary_expression "uVar45 + 0x100000" (identifier "uVar45") (+ "+") (number_literal "0x100000"))) () ")")))) (; ";")) (} "}"))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x3f:\n        bVar48 = false;\nLAB_002c6e24:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar45 = iVar38 - param_11;\n        uVar19 = uVar45 >> 2;\n        if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }\n        goto LAB_002c59a8;" (case "case") (number_literal "0x3f") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_002c6e24:\n        uVar17 = (uint)*param_10;" (statement_identifier "LAB_002c6e24") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")))) (; ";")) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" (identifier "uVar16") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n          uVar19 = uVar36 * 4;\n          uVar45 = uVar19 & 0x1ffffc;\n          uVar16 = uVar45 - 0x200000;\n          if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" ({ "{") (expression_statement "uVar19 = uVar36 * 4;" (assignment_expression "uVar19 = uVar36 * 4" (identifier "uVar19") (= "=") (binary_expression "uVar36 * 4" (identifier "uVar36") (* "*") (number_literal "4"))) (; ";")) (expression_statement "uVar45 = uVar19 & 0x1ffffc;" (assignment_expression "uVar45 = uVar19 & 0x1ffffc" (identifier "uVar45") (= "=") (binary_expression "uVar19 & 0x1ffffc" (identifier "uVar19") (& "&") (number_literal "0x1ffffc"))) (; ";")) (expression_statement "uVar16 = uVar45 - 0x200000;" (assignment_expression "uVar16 = uVar45 - 0x200000" (identifier "uVar16") (= "=") (binary_expression "uVar45 - 0x200000" (identifier "uVar45") (- "-") (number_literal "0x200000"))) (; ";")) (if_statement "if ((uVar19 & 0x100000) == 0) {\n            uVar16 = uVar45;\n          }" (if "if") (parenthesized_expression "((uVar19 & 0x100000) == 0)" (( "(") (binary_expression "(uVar19 & 0x100000) == 0" (parenthesized_expression "(uVar19 & 0x100000)" (( "(") (binary_expression "uVar19 & 0x100000" (identifier "uVar19") (& "&") (number_literal "0x100000")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            uVar16 = uVar45;\n          }" ({ "{") (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" (identifier "uVar16") (= "=") (identifier "uVar45")) (; ";")) (} "}"))) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar45 = iVar38 - param_11;" (assignment_expression "uVar45 = iVar38 - param_11" (identifier "uVar45") (= "=") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11"))) (; ";")) (expression_statement "uVar19 = uVar45 >> 2;" (assignment_expression "uVar19 = uVar45 >> 2" (identifier "uVar19") (= "=") (binary_expression "uVar45 >> 2" (identifier "uVar45") (>> ">>") (number_literal "2"))) (; ";")) (if_statement "if (!bVar49 || !bVar50) {\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }" (if "if") (parenthesized_expression "(!bVar49 || !bVar50)" (( "(") (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" (! "!") (identifier "bVar49")) (|| "||") (unary_expression "!bVar50" (! "!") (identifier "bVar50"))) () ")")) (compound_statement "{\n          uVar36 = uVar36 ^ uVar19;\n          *(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);\n          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar34 = uVar34 & 3;\n          goto joined_r0x002c6ec7;\n        }" ({ "{") (expression_statement "uVar36 = uVar36 ^ uVar19;" (assignment_expression "uVar36 = uVar36 ^ uVar19" (identifier "uVar36") (= "=") (binary_expression "uVar36 ^ uVar19" (identifier "uVar36") (^ "^") (identifier "uVar19"))) (; ";")) (expression_statement "*(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);" (assignment_expression "*(uint *)param_10 =\n               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (identifier "uVar17") (^ "^") (parenthesized_expression "((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18)" (( "(") (binary_expression "(uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18" (binary_expression "(uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8" (binary_expression "(uVar36 & 0x70000) >> 8" (parenthesized_expression "(uVar36 & 0x70000)" (( "(") (binary_expression "uVar36 & 0x70000" (identifier "uVar36") (& "&") (number_literal "0x70000")) () ")")) (>> ">>") (number_literal "8")) (| "|") (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18"))) () ")")))) (; ";")) (expression_statement "uVar34 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "uVar34 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "uVar34") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar34 = uVar34 & 3;" (assignment_expression "uVar34 = uVar34 & 3" (identifier "uVar34") (= "=") (binary_expression "uVar34 & 3" (identifier "uVar34") (& "&") (number_literal "3"))) (; ";")) (goto_statement "goto joined_r0x002c6ec7;" (goto "goto") (statement_identifier "joined_r0x002c6ec7") (; ";")) (} "}"))) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (case_statement "case 0x40:\n        bVar48 = false;\nswitchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }\n        break;" (case "case") (number_literal "0x40") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "switchD_002c5379_caseD_40:\n        if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }" (statement_identifier "switchD_002c5379_caseD_40") (: ":") (if_statement "if (param_3 == 4) {\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }\n        else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }" (if "if") (parenthesized_expression "(param_3 == 4)" (( "(") (binary_expression "param_3 == 4" (identifier "param_3") (== "==") (number_literal "4")) () ")")) (compound_statement "{\n          uVar17 = (uint)*param_10;\n          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n          uVar16 = uVar36 << 0x10;\n          if (bVar48 == false) {\n            uVar16 = local_c8;\n          }\n          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;\n          if ((bool)cVar13) goto LAB_002c59a8;\n          uVar19 = uVar19 ^ uVar36;\n          uVar16 = 0;\n          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;\n        }" ({ "{") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "uVar16 = uVar36 << 0x10;" (assignment_expression "uVar16 = uVar36 << 0x10" (identifier "uVar16") (= "=") (binary_expression "uVar36 << 0x10" (identifier "uVar36") (<< "<<") (number_literal "0x10"))) (; ";")) (if_statement "if (bVar48 == false) {\n            uVar16 = local_c8;\n          }" (if "if") (parenthesized_expression "(bVar48 == false)" (( "(") (binary_expression "bVar48 == false" (identifier "bVar48") (== "==") (false "false")) () ")")) (compound_statement "{\n            uVar16 = local_c8;\n          }" ({ "{") (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" (identifier "uVar16") (= "=") (identifier "local_c8")) (; ";")) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;" (assignment_expression "uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10" (identifier "uVar19") (= "=") (binary_expression "(iVar38 - param_11) + 0x8000 >> 0x10" (binary_expression "(iVar38 - param_11) + 0x8000" (parenthesized_expression "(iVar38 - param_11)" (( "(") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) () ")")) (+ "+") (number_literal "0x8000")) (>> ">>") (number_literal "0x10"))) (; ";")) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (expression_statement "uVar19 = uVar19 ^ uVar36;" (assignment_expression "uVar19 = uVar19 ^ uVar36" (identifier "uVar19") (= "=") (binary_expression "uVar19 ^ uVar36" (identifier "uVar19") (^ "^") (identifier "uVar36"))) (; ";")) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;" (assignment_expression "*(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17" (parenthesized_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" (( "(") (binary_expression "(uVar19 & 0xff00) << 8 | uVar19 << 0x18" (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" (( "(") (binary_expression "uVar19 & 0xff00" (identifier "uVar19") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar19 << 0x18" (identifier "uVar19") (<< "<<") (number_literal "0x18"))) () ")")) (^ "^") (identifier "uVar17"))) (; ";")) (} "}")) (else_clause "else {\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }" (else "else") (compound_statement "{\n          if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }\n          lVar30 = FUN_0049cb70(0x40);\n          *(undefined1 *)(lVar30 + 0x3c) = 0;\n          uVar16 = 0;\n          *(undefined4 *)(lVar30 + 0x2c) = 0;\n          *(ulong **)(lVar30 + 0x10) = param_10;\n          *(long **)(lVar30 + 0x18) = plVar3;\n          *(uint **)(lVar30 + 0x20) = param_9;\n          *(uint *)(lVar30 + 0x28) = local_c8;\n          *(uint *)(lVar30 + 0x30) = uVar7;\n          *(bool *)(lVar30 + 0x34) = bVar48;\n          *(uint *)(lVar30 + 0x38) = param_11;\n          FUN_004a11e0(lVar30,&DAT_0067db00);\n          _DAT_0067db10 = _DAT_0067db10 + 1;\n        }" ({ "{") (if_statement "if (param_3 != 9) {\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }" (if "if") (parenthesized_expression "(param_3 != 9)" (( "(") (binary_expression "param_3 != 9" (identifier "param_3") (!= "!=") (number_literal "9")) () ")")) (compound_statement "{\n                    \n            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");\n          }" ({ "{") (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x2eda,"relocate")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x2eda") (, ",") (string_literal ""relocate"" (" """) (string_content "relocate") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "lVar30 = FUN_0049cb70(0x40);" (assignment_expression "lVar30 = FUN_0049cb70(0x40)" (identifier "lVar30") (= "=") (call_expression "FUN_0049cb70(0x40)" (identifier "FUN_0049cb70") (argument_list "(0x40)" (( "(") (number_literal "0x40") () ")")))) (; ";")) (expression_statement "*(undefined1 *)(lVar30 + 0x3c) = 0;" (assignment_expression "*(undefined1 *)(lVar30 + 0x3c) = 0" (pointer_expression "*(undefined1 *)(lVar30 + 0x3c)" (* "*") (cast_expression "(undefined1 *)(lVar30 + 0x3c)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x3c)" (( "(") (binary_expression "lVar30 + 0x3c" (identifier "lVar30") (+ "+") (number_literal "0x3c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(lVar30 + 0x2c) = 0;" (assignment_expression "*(undefined4 *)(lVar30 + 0x2c) = 0" (pointer_expression "*(undefined4 *)(lVar30 + 0x2c)" (* "*") (cast_expression "(undefined4 *)(lVar30 + 0x2c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x2c)" (( "(") (binary_expression "lVar30 + 0x2c" (identifier "lVar30") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(ulong **)(lVar30 + 0x10) = param_10;" (assignment_expression "*(ulong **)(lVar30 + 0x10) = param_10" (pointer_expression "*(ulong **)(lVar30 + 0x10)" (* "*") (cast_expression "(ulong **)(lVar30 + 0x10)" (( "(") (type_descriptor "ulong **" (type_identifier "ulong") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(lVar30 + 0x10)" (( "(") (binary_expression "lVar30 + 0x10" (identifier "lVar30") (+ "+") (number_literal "0x10")) () ")")))) (= "=") (identifier "param_10")) (; ";")) (expression_statement "*(long **)(lVar30 + 0x18) = plVar3;" (assignment_expression "*(long **)(lVar30 + 0x18) = plVar3" (pointer_expression "*(long **)(lVar30 + 0x18)" (* "*") (cast_expression "(long **)(lVar30 + 0x18)" (( "(") (type_descriptor "long **" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(lVar30 + 0x18)" (( "(") (binary_expression "lVar30 + 0x18" (identifier "lVar30") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "plVar3")) (; ";")) (expression_statement "*(uint **)(lVar30 + 0x20) = param_9;" (assignment_expression "*(uint **)(lVar30 + 0x20) = param_9" (pointer_expression "*(uint **)(lVar30 + 0x20)" (* "*") (cast_expression "(uint **)(lVar30 + 0x20)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(lVar30 + 0x20)" (( "(") (binary_expression "lVar30 + 0x20" (identifier "lVar30") (+ "+") (number_literal "0x20")) () ")")))) (= "=") (identifier "param_9")) (; ";")) (expression_statement "*(uint *)(lVar30 + 0x28) = local_c8;" (assignment_expression "*(uint *)(lVar30 + 0x28) = local_c8" (pointer_expression "*(uint *)(lVar30 + 0x28)" (* "*") (cast_expression "(uint *)(lVar30 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x28)" (( "(") (binary_expression "lVar30 + 0x28" (identifier "lVar30") (+ "+") (number_literal "0x28")) () ")")))) (= "=") (identifier "local_c8")) (; ";")) (expression_statement "*(uint *)(lVar30 + 0x30) = uVar7;" (assignment_expression "*(uint *)(lVar30 + 0x30) = uVar7" (pointer_expression "*(uint *)(lVar30 + 0x30)" (* "*") (cast_expression "(uint *)(lVar30 + 0x30)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x30)" (( "(") (binary_expression "lVar30 + 0x30" (identifier "lVar30") (+ "+") (number_literal "0x30")) () ")")))) (= "=") (identifier "uVar7")) (; ";")) (expression_statement "*(bool *)(lVar30 + 0x34) = bVar48;" (assignment_expression "*(bool *)(lVar30 + 0x34) = bVar48" (pointer_expression "*(bool *)(lVar30 + 0x34)" (* "*") (cast_expression "(bool *)(lVar30 + 0x34)" (( "(") (type_descriptor "bool *" (primitive_type "bool") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x34)" (( "(") (binary_expression "lVar30 + 0x34" (identifier "lVar30") (+ "+") (number_literal "0x34")) () ")")))) (= "=") (identifier "bVar48")) (; ";")) (expression_statement "*(uint *)(lVar30 + 0x38) = param_11;" (assignment_expression "*(uint *)(lVar30 + 0x38) = param_11" (pointer_expression "*(uint *)(lVar30 + 0x38)" (* "*") (cast_expression "(uint *)(lVar30 + 0x38)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x38)" (( "(") (binary_expression "lVar30 + 0x38" (identifier "lVar30") (+ "+") (number_literal "0x38")) () ")")))) (= "=") (identifier "param_11")) (; ";")) (expression_statement "FUN_004a11e0(lVar30,&DAT_0067db00);" (call_expression "FUN_004a11e0(lVar30,&DAT_0067db00)" (identifier "FUN_004a11e0") (argument_list "(lVar30,&DAT_0067db00)" (( "(") (identifier "lVar30") (, ",") (pointer_expression "&DAT_0067db00" (& "&") (identifier "DAT_0067db00")) () ")"))) (; ";")) (expression_statement "_DAT_0067db10 = _DAT_0067db10 + 1;" (assignment_expression "_DAT_0067db10 = _DAT_0067db10 + 1" (identifier "_DAT_0067db10") (= "=") (binary_expression "_DAT_0067db10 + 1" (identifier "_DAT_0067db10") (+ "+") (number_literal "1"))) (; ";")) (} "}"))))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x41:\n        bVar48 = false;\nLAB_002c6ccf:\n        uVar17 = (uint)*param_10;\n        uVar16 = (uVar17 & 0xff0000) >> 8;\n        uVar36 = uVar17 >> 0x18 | uVar16;\n        uVar19 = local_c8;\n        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }\n        if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);\n        uVar19 = iVar38 - param_11;\n        if ((bool)cVar13) goto LAB_002c59a8;\n        uVar16 = 0;\n        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;\n        break;" (case "case") (number_literal "0x41") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_002c6ccf:\n        uVar17 = (uint)*param_10;" (statement_identifier "LAB_002c6ccf") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar16 = (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar16 = (uVar17 & 0xff0000) >> 8" (identifier "uVar16") (= "=") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (; ";")) (expression_statement "uVar36 = uVar17 >> 0x18 | uVar16;" (assignment_expression "uVar36 = uVar17 >> 0x18 | uVar16" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | uVar16" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (identifier "uVar16"))) (; ";")) (expression_statement "uVar19 = local_c8;" (assignment_expression "uVar19 = local_c8" (identifier "uVar19") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {\n          uVar19 = uVar36;\n        }" (if "if") (parenthesized_expression "((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0))" (( "(") (binary_expression "(bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)" (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (&& "&&") (parenthesized_expression "(uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)" (( "(") (comma_expression "uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0" (assignment_expression "uVar19 = uVar36 - 0x10000" (identifier "uVar19") (= "=") (binary_expression "uVar36 - 0x10000" (identifier "uVar36") (- "-") (number_literal "0x10000"))) (, ",") (binary_expression "(uVar16 & 0x8000) == 0" (parenthesized_expression "(uVar16 & 0x8000)" (( "(") (binary_expression "uVar16 & 0x8000" (identifier "uVar16") (& "&") (number_literal "0x8000")) () ")")) (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n          uVar19 = uVar36;\n        }" ({ "{") (expression_statement "uVar19 = uVar36;" (assignment_expression "uVar19 = uVar36" (identifier "uVar19") (= "=") (identifier "uVar36")) (; ";")) (} "}"))) (if_statement "if ((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }" (if "if") (parenthesized_expression "((param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00))" (( "(") (binary_expression "(param_3 == 9) &&\n           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)" (parenthesized_expression "(param_3 == 9)" (( "(") (binary_expression "param_3 == 9" (identifier "param_3") (== "==") (number_literal "9")) () ")")) (&& "&&") (parenthesized_expression "(local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)" (( "(") (comma_expression "local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00" (assignment_expression "local_98 = DAT_0067db00" (identifier "local_98") (= "=") (identifier "DAT_0067db00")) (, ",") (binary_expression "(undefined8 **)DAT_0067db00 != &DAT_0067db00" (cast_expression "(undefined8 **)DAT_0067db00" (( "(") (type_descriptor "undefined8 **" (type_identifier "undefined8") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "DAT_0067db00")) (!= "!=") (pointer_expression "&DAT_0067db00" (& "&") (identifier "DAT_0067db00")))) () ")"))) () ")")) (compound_statement "{\n          do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);\n        }" ({ "{") (do_statement "do {\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          } while ((undefined8 **)local_98 != &DAT_0067db00);" (do "do") (compound_statement "{\n            if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }\n          }" ({ "{") (if_statement "if (uVar7 == *(uint *)(local_98 + 6)) {\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }\n            else {\n              local_98 = (undefined8 *)*local_98;\n            }" (if "if") (parenthesized_expression "(uVar7 == *(uint *)(local_98 + 6))" (( "(") (binary_expression "uVar7 == *(uint *)(local_98 + 6)" (identifier "uVar7") (== "==") (pointer_expression "*(uint *)(local_98 + 6)" (* "*") (cast_expression "(uint *)(local_98 + 6)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_98 + 6)" (( "(") (binary_expression "local_98 + 6" (identifier "local_98") (+ "+") (number_literal "6")) () ")"))))) () ")")) (compound_statement "{\n              puVar6 = (uint *)local_98[2];\n              iVar38 = *(int *)(local_98 + 5);\n              uVar16 = *puVar6;\n              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;\n              if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }\n              iVar20 = *(int *)(local_98 + 7);\n              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);\n              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;\n              if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }\n              puVar40 = (undefined8 *)*local_98;\n              _DAT_0067db10 = _DAT_0067db10 + -1;\n              FUN_004a1200(local_98);\n              FUN_0049e340(local_98);\n              local_98 = puVar40;\n            }" ({ "{") (expression_statement "puVar6 = (uint *)local_98[2];" (assignment_expression "puVar6 = (uint *)local_98[2]" (identifier "puVar6") (= "=") (cast_expression "(uint *)local_98[2]" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "local_98[2]" (identifier "local_98") ([ "[") (number_literal "2") (] "]")))) (; ";")) (expression_statement "iVar38 = *(int *)(local_98 + 5);" (assignment_expression "iVar38 = *(int *)(local_98 + 5)" (identifier "iVar38") (= "=") (pointer_expression "*(int *)(local_98 + 5)" (* "*") (cast_expression "(int *)(local_98 + 5)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_98 + 5)" (( "(") (binary_expression "local_98 + 5" (identifier "local_98") (+ "+") (number_literal "5")) () ")"))))) (; ";")) (expression_statement "uVar16 = *puVar6;" (assignment_expression "uVar16 = *puVar6" (identifier "uVar16") (= "=") (pointer_expression "*puVar6" (* "*") (identifier "puVar6"))) (; ";")) (expression_statement "uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;" (assignment_expression "uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (identifier "uVar45") (= "=") (binary_expression "uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8" (binary_expression "uVar16 >> 0x18" (identifier "uVar16") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar16 & 0xff0000) >> 8" (parenthesized_expression "(uVar16 & 0xff0000)" (( "(") (binary_expression "uVar16 & 0xff0000" (identifier "uVar16") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8")))) (; ";")) (if_statement "if (*(char *)((long)local_98 + 0x34) != '\0') {\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }" (if "if") (parenthesized_expression "(*(char *)((long)local_98 + 0x34) != '\0')" (( "(") (binary_expression "*(char *)((long)local_98 + 0x34) != '\0'" (pointer_expression "*(char *)((long)local_98 + 0x34)" (* "*") (cast_expression "(char *)((long)local_98 + 0x34)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)local_98 + 0x34)" (( "(") (binary_expression "(long)local_98 + 0x34" (cast_expression "(long)local_98" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "local_98")) (+ "+") (number_literal "0x34")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                iVar38 = uVar19 + uVar45 * 0x10000;\n              }" ({ "{") (expression_statement "iVar38 = uVar19 + uVar45 * 0x10000;" (assignment_expression "iVar38 = uVar19 + uVar45 * 0x10000" (identifier "iVar38") (= "=") (binary_expression "uVar19 + uVar45 * 0x10000" (identifier "uVar19") (+ "+") (binary_expression "uVar45 * 0x10000" (identifier "uVar45") (* "*") (number_literal "0x10000")))) (; ";")) (} "}"))) (expression_statement "iVar20 = *(int *)(local_98 + 7);" (assignment_expression "iVar20 = *(int *)(local_98 + 7)" (identifier "iVar20") (= "=") (pointer_expression "*(int *)(local_98 + 7)" (* "*") (cast_expression "(int *)(local_98 + 7)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_98 + 7)" (( "(") (binary_expression "local_98 + 7" (identifier "local_98") (+ "+") (number_literal "7")) () ")"))))) (; ";")) (expression_statement "iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);" (assignment_expression "iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(local_98[4],local_98[3],iVar38)" (identifier "FUN_001d7270") (argument_list "(local_98[4],local_98[3],iVar38)" (( "(") (subscript_expression "local_98[4]" (identifier "local_98") ([ "[") (number_literal "4") (] "]")) (, ",") (subscript_expression "local_98[3]" (identifier "local_98") ([ "[") (number_literal "3") (] "]")) (, ",") (identifier "iVar38") () ")")))) (; ";")) (expression_statement "uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;" (assignment_expression "uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10" (identifier "uVar32") (= "=") (binary_expression "(uint)((0x8000 - iVar20) + iVar38) >> 0x10" (call_expression "(uint)((0x8000 - iVar20) + iVar38)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((0x8000 - iVar20) + iVar38)" (( "(") (binary_expression "(0x8000 - iVar20) + iVar38" (parenthesized_expression "(0x8000 - iVar20)" (( "(") (binary_expression "0x8000 - iVar20" (number_literal "0x8000") (- "-") (identifier "iVar20")) () ")")) (+ "+") (identifier "iVar38")) () ")"))) (>> ">>") (number_literal "0x10"))) (; ";")) (if_statement "if (bVar49 && bVar50) {\n                *(uint *)param_1 = uVar32;\n              }\n              else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }" (if "if") (parenthesized_expression "(bVar49 && bVar50)" (( "(") (binary_expression "bVar49 && bVar50" (identifier "bVar49") (&& "&&") (identifier "bVar50")) () ")")) (compound_statement "{\n                *(uint *)param_1 = uVar32;\n              }" ({ "{") (expression_statement "*(uint *)param_1 = uVar32;" (assignment_expression "*(uint *)param_1 = uVar32" (pointer_expression "*(uint *)param_1" (* "*") (cast_expression "(uint *)param_1" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (= "=") (identifier "uVar32")) (; ";")) (} "}")) (else_clause "else {\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }" (else "else") (compound_statement "{\n                uVar32 = uVar32 ^ uVar45;\n                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;\n              }" ({ "{") (expression_statement "uVar32 = uVar32 ^ uVar45;" (assignment_expression "uVar32 = uVar32 ^ uVar45" (identifier "uVar32") (= "=") (binary_expression "uVar32 ^ uVar45" (identifier "uVar32") (^ "^") (identifier "uVar45"))) (; ";")) (expression_statement "*puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;" (assignment_expression "*puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16" (pointer_expression "*puVar6" (* "*") (identifier "puVar6")) (= "=") (binary_expression "((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16" (parenthesized_expression "((uVar32 & 0xff00) << 8 | uVar32 << 0x18)" (( "(") (binary_expression "(uVar32 & 0xff00) << 8 | uVar32 << 0x18" (binary_expression "(uVar32 & 0xff00) << 8" (parenthesized_expression "(uVar32 & 0xff00)" (( "(") (binary_expression "uVar32 & 0xff00" (identifier "uVar32") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar32 << 0x18" (identifier "uVar32") (<< "<<") (number_literal "0x18"))) () ")")) (^ "^") (identifier "uVar16"))) (; ";")) (} "}")))) (expression_statement "puVar40 = (undefined8 *)*local_98;" (assignment_expression "puVar40 = (undefined8 *)*local_98" (identifier "puVar40") (= "=") (cast_expression "(undefined8 *)*local_98" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*local_98" (* "*") (identifier "local_98")))) (; ";")) (expression_statement "_DAT_0067db10 = _DAT_0067db10 + -1;" (assignment_expression "_DAT_0067db10 = _DAT_0067db10 + -1" (identifier "_DAT_0067db10") (= "=") (binary_expression "_DAT_0067db10 + -1" (identifier "_DAT_0067db10") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "FUN_004a1200(local_98);" (call_expression "FUN_004a1200(local_98)" (identifier "FUN_004a1200") (argument_list "(local_98)" (( "(") (identifier "local_98") () ")"))) (; ";")) (expression_statement "FUN_0049e340(local_98);" (call_expression "FUN_0049e340(local_98)" (identifier "FUN_0049e340") (argument_list "(local_98)" (( "(") (identifier "local_98") () ")"))) (; ";")) (expression_statement "local_98 = puVar40;" (assignment_expression "local_98 = puVar40" (identifier "local_98") (= "=") (identifier "puVar40")) (; ";")) (} "}")) (else_clause "else {\n              local_98 = (undefined8 *)*local_98;\n            }" (else "else") (compound_statement "{\n              local_98 = (undefined8 *)*local_98;\n            }" ({ "{") (expression_statement "local_98 = (undefined8 *)*local_98;" (assignment_expression "local_98 = (undefined8 *)*local_98" (identifier "local_98") (= "=") (cast_expression "(undefined8 *)*local_98" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*local_98" (* "*") (identifier "local_98")))) (; ";")) (} "}")))) (} "}")) (while "while") (parenthesized_expression "((undefined8 **)local_98 != &DAT_0067db00)" (( "(") (binary_expression "(undefined8 **)local_98 != &DAT_0067db00" (cast_expression "(undefined8 **)local_98" (( "(") (type_descriptor "undefined8 **" (type_identifier "undefined8") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "local_98")) (!= "!=") (pointer_expression "&DAT_0067db00" (& "&") (identifier "DAT_0067db00"))) () ")")) (; ";")) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar19);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar19)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar19)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar19)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar19") () ")")))) (; ";")) (expression_statement "uVar19 = iVar38 - param_11;" (assignment_expression "uVar19 = iVar38 - param_11" (identifier "uVar19") (= "=") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11"))) (; ";")) (if_statement "if ((bool)cVar13) goto LAB_002c59a8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17\n        ;" (assignment_expression "*(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "(((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17" (parenthesized_expression "(((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18)" (( "(") (binary_expression "((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18" (binary_expression "((uVar19 ^ uVar36) & 0xff00) << 8" (parenthesized_expression "((uVar19 ^ uVar36) & 0xff00)" (( "(") (binary_expression "(uVar19 ^ uVar36) & 0xff00" (parenthesized_expression "(uVar19 ^ uVar36)" (( "(") (binary_expression "uVar19 ^ uVar36" (identifier "uVar19") (^ "^") (identifier "uVar36")) () ")")) (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "(uVar19 ^ uVar36) << 0x18" (parenthesized_expression "(uVar19 ^ uVar36)" (( "(") (binary_expression "uVar19 ^ uVar36" (identifier "uVar19") (^ "^") (identifier "uVar36")) () ")")) (<< "<<") (number_literal "0x18"))) () ")")) (^ "^") (identifier "uVar17"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x8b:\n        bVar48 = false;\nLAB_002c6bb8:\n        uVar34 = *param_10;\n        uVar17 = (uint)uVar34 >> 0x18;\n        uVar36 = local_c8;\n        if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }\n        break;" (case "case") (number_literal "0x8b") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_002c6bb8:\n        uVar34 = *param_10;" (statement_identifier "LAB_002c6bb8") (: ":") (expression_statement "uVar34 = *param_10;" (assignment_expression "uVar34 = *param_10" (identifier "uVar34") (= "=") (pointer_expression "*param_10" (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar17 = (uint)uVar34 >> 0x18;" (assignment_expression "uVar17 = (uint)uVar34 >> 0x18" (identifier "uVar17") (= "=") (binary_expression "(uint)uVar34 >> 0x18" (cast_expression "(uint)uVar34" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar34")) (>> ">>") (number_literal "0x18"))) (; ";")) (expression_statement "uVar36 = local_c8;" (assignment_expression "uVar36 = local_c8" (identifier "uVar36") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n          uVar16 = uVar17 * 2;\n          uVar19 = uVar16 & 0xff;\n          uVar36 = uVar19 - 0x100;\n          if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }\n        }" ({ "{") (expression_statement "uVar16 = uVar17 * 2;" (assignment_expression "uVar16 = uVar17 * 2" (identifier "uVar16") (= "=") (binary_expression "uVar17 * 2" (identifier "uVar17") (* "*") (number_literal "2"))) (; ";")) (expression_statement "uVar19 = uVar16 & 0xff;" (assignment_expression "uVar19 = uVar16 & 0xff" (identifier "uVar19") (= "=") (binary_expression "uVar16 & 0xff" (identifier "uVar16") (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "uVar36 = uVar19 - 0x100;" (assignment_expression "uVar36 = uVar19 - 0x100" (identifier "uVar36") (= "=") (binary_expression "uVar19 - 0x100" (identifier "uVar19") (- "-") (number_literal "0x100"))) (; ";")) (if_statement "if ((uVar16 & 0x80) == 0) {\n            uVar36 = uVar19;\n          }" (if "if") (parenthesized_expression "((uVar16 & 0x80) == 0)" (( "(") (binary_expression "(uVar16 & 0x80) == 0" (parenthesized_expression "(uVar16 & 0x80)" (( "(") (binary_expression "uVar16 & 0x80" (identifier "uVar16") (& "&") (number_literal "0x80")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            uVar36 = uVar19;\n          }" ({ "{") (expression_statement "uVar36 = uVar19;" (assignment_expression "uVar36 = uVar19" (identifier "uVar36") (= "=") (identifier "uVar19")) (; ";")) (} "}"))) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar36);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar36)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar36)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar36)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar36") () ")")))) (; ";")) (expression_statement "uVar19 = iVar38 - param_11 >> 1;" (assignment_expression "uVar19 = iVar38 - param_11 >> 1" (identifier "uVar19") (= "=") (binary_expression "iVar38 - param_11 >> 1" (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) (>> ">>") (number_literal "1"))) (; ";")) (if_statement "if ((bool)cVar13) {\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }\n        else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (compound_statement "{\nLAB_002c78e8:\n          uVar16 = 0;\n          *(uint *)param_1 = uVar19;\n        }" ({ "{") (labeled_statement "LAB_002c78e8:\n          uVar16 = 0;" (statement_identifier "LAB_002c78e8") (: ":") (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";"))) (expression_statement "*(uint *)param_1 = uVar19;" (assignment_expression "*(uint *)param_1 = uVar19" (pointer_expression "*(uint *)param_1" (* "*") (cast_expression "(uint *)param_1" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) (= "=") (identifier "uVar19")) (; ";")) (} "}")) (else_clause "else {\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }" (else "else") (compound_statement "{\n          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;\n          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);\n        }" ({ "{") (expression_statement "*(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;" (assignment_expression "*(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "(uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18" (cast_expression "(uint)uVar34" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar34")) (^ "^") (binary_expression "((uVar19 ^ uVar17) & 0x7f) << 0x18" (parenthesized_expression "((uVar19 ^ uVar17) & 0x7f)" (( "(") (binary_expression "(uVar19 ^ uVar17) & 0x7f" (parenthesized_expression "(uVar19 ^ uVar17)" (( "(") (binary_expression "uVar19 ^ uVar17" (identifier "uVar19") (^ "^") (identifier "uVar17")) () ")")) (& "&") (number_literal "0x7f")) () ")")) (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);" (assignment_expression "uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80)" (identifier "uVar16") (= "=") (call_expression "(uint)(0xff < (iVar38 - param_11) + 0x80)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0xff < (iVar38 - param_11) + 0x80)" (( "(") (binary_expression "0xff < (iVar38 - param_11) + 0x80" (number_literal "0xff") (< "<") (binary_expression "(iVar38 - param_11) + 0x80" (parenthesized_expression "(iVar38 - param_11)" (( "(") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) () ")")) (+ "+") (number_literal "0x80"))) () ")")))) (; ";")) (} "}")))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x8c:\n        bVar48 = false;\nLAB_002c6c3e:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);\n        break;" (case "case") (number_literal "0x8c") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_002c6c3e:\n        uVar17 = (uint)*param_10;" (statement_identifier "LAB_002c6c3e") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" (identifier "uVar16") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x7fe;\n          uVar16 = uVar45 - 0x800;\n          if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }\n        }" ({ "{") (expression_statement "uVar19 = uVar36 * 2;" (assignment_expression "uVar19 = uVar36 * 2" (identifier "uVar19") (= "=") (binary_expression "uVar36 * 2" (identifier "uVar36") (* "*") (number_literal "2"))) (; ";")) (expression_statement "uVar45 = uVar19 & 0x7fe;" (assignment_expression "uVar45 = uVar19 & 0x7fe" (identifier "uVar45") (= "=") (binary_expression "uVar19 & 0x7fe" (identifier "uVar19") (& "&") (number_literal "0x7fe"))) (; ";")) (expression_statement "uVar16 = uVar45 - 0x800;" (assignment_expression "uVar16 = uVar45 - 0x800" (identifier "uVar16") (= "=") (binary_expression "uVar45 - 0x800" (identifier "uVar45") (- "-") (number_literal "0x800"))) (; ";")) (if_statement "if ((uVar19 & 0x400) == 0) {\n            uVar16 = uVar45;\n          }" (if "if") (parenthesized_expression "((uVar19 & 0x400) == 0)" (( "(") (binary_expression "(uVar19 & 0x400) == 0" (parenthesized_expression "(uVar19 & 0x400)" (( "(") (binary_expression "uVar19 & 0x400" (identifier "uVar19") (& "&") (number_literal "0x400")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            uVar16 = uVar45;\n          }" ({ "{") (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" (identifier "uVar16") (= "=") (identifier "uVar45")) (; ";")) (} "}"))) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar19 = iVar38 - param_11 >> 1;" (assignment_expression "uVar19 = iVar38 - param_11 >> 1" (identifier "uVar19") (= "=") (binary_expression "iVar38 - param_11 >> 1" (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) (>> ">>") (number_literal "1"))) (; ";")) (if_statement "if ((bool)cVar13) goto LAB_002c78e8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c78e8;" (goto "goto") (statement_identifier "LAB_002c78e8") (; ";"))) (expression_statement "uVar19 = uVar19 ^ uVar36;" (assignment_expression "uVar19 = uVar19 ^ uVar36" (identifier "uVar19") (= "=") (binary_expression "uVar19 ^ uVar36" (identifier "uVar19") (^ "^") (identifier "uVar36"))) (; ";")) (expression_statement "*(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);" (assignment_expression "*(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18)" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18)" (identifier "uVar17") (^ "^") (parenthesized_expression "((uVar19 & 0x300) << 8 | uVar19 << 0x18)" (( "(") (binary_expression "(uVar19 & 0x300) << 8 | uVar19 << 0x18" (binary_expression "(uVar19 & 0x300) << 8" (parenthesized_expression "(uVar19 & 0x300)" (( "(") (binary_expression "uVar19 & 0x300" (identifier "uVar19") (& "&") (number_literal "0x300")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar19 << 0x18" (identifier "uVar19") (<< "<<") (number_literal "0x18"))) () ")")))) (; ";")) (expression_statement "uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);" (assignment_expression "uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400)" (identifier "uVar16") (= "=") (call_expression "(uint)(0x7ff < (iVar38 - param_11) + 0x400)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0x7ff < (iVar38 - param_11) + 0x400)" (( "(") (binary_expression "0x7ff < (iVar38 - param_11) + 0x400" (number_literal "0x7ff") (< "<") (binary_expression "(iVar38 - param_11) + 0x400" (parenthesized_expression "(iVar38 - param_11)" (( "(") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) () ")")) (+ "+") (number_literal "0x400"))) () ")")))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x8d:\n        bVar48 = false;\nLAB_002c69c5:\n        uVar17 = (uint)*param_10;\n        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;\n        uVar16 = local_c8;\n        if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);\n        uVar19 = iVar38 - param_11 >> 1;\n        if ((bool)cVar13) goto LAB_002c78e8;\n        uVar19 = uVar19 ^ uVar36;\n        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);\n        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);\n        break;" (case "case") (number_literal "0x8d") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (labeled_statement "LAB_002c69c5:\n        uVar17 = (uint)*param_10;" (statement_identifier "LAB_002c69c5") (: ":") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";"))) (expression_statement "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;" (assignment_expression "uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (identifier "uVar36") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")))) (; ";")) (expression_statement "uVar16 = local_c8;" (assignment_expression "uVar16 = local_c8" (identifier "uVar16") (= "=") (identifier "local_c8")) (; ";")) (if_statement "if (bVar48 != false) {\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" (if "if") (parenthesized_expression "(bVar48 != false)" (( "(") (binary_expression "bVar48 != false" (identifier "bVar48") (!= "!=") (false "false")) () ")")) (compound_statement "{\n          uVar19 = uVar36 * 2;\n          uVar45 = uVar19 & 0x1fffe;\n          uVar16 = uVar45 - 0x20000;\n          if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }\n        }" ({ "{") (expression_statement "uVar19 = uVar36 * 2;" (assignment_expression "uVar19 = uVar36 * 2" (identifier "uVar19") (= "=") (binary_expression "uVar36 * 2" (identifier "uVar36") (* "*") (number_literal "2"))) (; ";")) (expression_statement "uVar45 = uVar19 & 0x1fffe;" (assignment_expression "uVar45 = uVar19 & 0x1fffe" (identifier "uVar45") (= "=") (binary_expression "uVar19 & 0x1fffe" (identifier "uVar19") (& "&") (number_literal "0x1fffe"))) (; ";")) (expression_statement "uVar16 = uVar45 - 0x20000;" (assignment_expression "uVar16 = uVar45 - 0x20000" (identifier "uVar16") (= "=") (binary_expression "uVar45 - 0x20000" (identifier "uVar45") (- "-") (number_literal "0x20000"))) (; ";")) (if_statement "if ((uVar19 & 0x10000) == 0) {\n            uVar16 = uVar45;\n          }" (if "if") (parenthesized_expression "((uVar19 & 0x10000) == 0)" (( "(") (binary_expression "(uVar19 & 0x10000) == 0" (parenthesized_expression "(uVar19 & 0x10000)" (( "(") (binary_expression "uVar19 & 0x10000" (identifier "uVar19") (& "&") (number_literal "0x10000")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            uVar16 = uVar45;\n          }" ({ "{") (expression_statement "uVar16 = uVar45;" (assignment_expression "uVar16 = uVar45" (identifier "uVar16") (= "=") (identifier "uVar45")) (; ";")) (} "}"))) (} "}"))) (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar16);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar16)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar16)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar16)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar16") () ")")))) (; ";")) (expression_statement "uVar19 = iVar38 - param_11 >> 1;" (assignment_expression "uVar19 = iVar38 - param_11 >> 1" (identifier "uVar19") (= "=") (binary_expression "iVar38 - param_11 >> 1" (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) (>> ">>") (number_literal "1"))) (; ";")) (if_statement "if ((bool)cVar13) goto LAB_002c78e8;" (if "if") (parenthesized_expression "((bool)cVar13)" (( "(") (cast_expression "(bool)cVar13" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "cVar13")) () ")")) (goto_statement "goto LAB_002c78e8;" (goto "goto") (statement_identifier "LAB_002c78e8") (; ";"))) (expression_statement "uVar19 = uVar19 ^ uVar36;" (assignment_expression "uVar19 = uVar19 ^ uVar36" (identifier "uVar19") (= "=") (binary_expression "uVar19 ^ uVar36" (identifier "uVar19") (^ "^") (identifier "uVar36"))) (; ";")) (expression_statement "*(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);" (assignment_expression "*(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" (pointer_expression "*(uint *)param_10" (* "*") (cast_expression "(uint *)param_10" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" (identifier "uVar17") (^ "^") (parenthesized_expression "((uVar19 & 0xff00) << 8 | uVar19 << 0x18)" (( "(") (binary_expression "(uVar19 & 0xff00) << 8 | uVar19 << 0x18" (binary_expression "(uVar19 & 0xff00) << 8" (parenthesized_expression "(uVar19 & 0xff00)" (( "(") (binary_expression "uVar19 & 0xff00" (identifier "uVar19") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar19 << 0x18" (identifier "uVar19") (<< "<<") (number_literal "0x18"))) () ")")))) (; ";")) (expression_statement "uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);" (assignment_expression "uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000)" (identifier "uVar16") (= "=") (call_expression "(uint)(0x1ffff < (iVar38 - param_11) + 0x10000)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(0x1ffff < (iVar38 - param_11) + 0x10000)" (( "(") (binary_expression "0x1ffff < (iVar38 - param_11) + 0x10000" (number_literal "0x1ffff") (< "<") (binary_expression "(iVar38 - param_11) + 0x10000" (parenthesized_expression "(iVar38 - param_11)" (( "(") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11")) () ")")) (+ "+") (number_literal "0x10000"))) () ")")))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xf8:\n        bVar48 = false;\n        uVar17 = local_c8;\nLAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);\n        uVar19 = iVar38 - param_11;\n        if (!bVar49 || !bVar50) goto LAB_002c5ccb;\n        goto LAB_002c59a8;" (case "case") (number_literal "0xf8") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";")) (expression_statement "uVar17 = local_c8;" (assignment_expression "uVar17 = local_c8" (identifier "uVar17") (= "=") (identifier "local_c8")) (; ";")) (labeled_statement "LAB_002c6ed9:\n        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);" (statement_identifier "LAB_002c6ed9") (: ":") (expression_statement "iVar38 = FUN_001d7270(param_9,plVar3,uVar17);" (assignment_expression "iVar38 = FUN_001d7270(param_9,plVar3,uVar17)" (identifier "iVar38") (= "=") (call_expression "FUN_001d7270(param_9,plVar3,uVar17)" (identifier "FUN_001d7270") (argument_list "(param_9,plVar3,uVar17)" (( "(") (identifier "param_9") (, ",") (identifier "plVar3") (, ",") (identifier "uVar17") () ")")))) (; ";"))) (expression_statement "uVar19 = iVar38 - param_11;" (assignment_expression "uVar19 = iVar38 - param_11" (identifier "uVar19") (= "=") (binary_expression "iVar38 - param_11" (identifier "iVar38") (- "-") (identifier "param_11"))) (; ";")) (if_statement "if (!bVar49 || !bVar50) goto LAB_002c5ccb;" (if "if") (parenthesized_expression "(!bVar49 || !bVar50)" (( "(") (binary_expression "!bVar49 || !bVar50" (unary_expression "!bVar49" (! "!") (identifier "bVar49")) (|| "||") (unary_expression "!bVar50" (! "!") (identifier "bVar50"))) () ")")) (goto_statement "goto LAB_002c5ccb;" (goto "goto") (statement_identifier "LAB_002c5ccb") (; ";"))) (goto_statement "goto LAB_002c59a8;" (goto "goto") (statement_identifier "LAB_002c59a8") (; ";"))) (} "}"))) (labeled_statement "LAB_002c5940:\n      puVar44 = puVar44 + 1;" (statement_identifier "LAB_002c5940") (: ":") (expression_statement "puVar44 = puVar44 + 1;" (assignment_expression "puVar44 = puVar44 + 1" (identifier "puVar44") (= "=") (binary_expression "puVar44 + 1" (identifier "puVar44") (+ "+") (number_literal "1"))) (; ";"))) (if_statement "if ((uint *)&local_78 == puVar44) {\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }" (if "if") (parenthesized_expression "((uint *)&local_78 == puVar44)" (( "(") (binary_expression "(uint *)&local_78 == puVar44" (cast_expression "(uint *)&local_78" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_78" (& "&") (identifier "local_78"))) (== "==") (identifier "puVar44")) () ")")) (compound_statement "{\nLAB_002c5380:\n        uVar17 = uVar47 - 0x85;\n        if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }\n        if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }\nLAB_002c53ec:\n        FUN_001a5bc0(&local_78);\n        return 1;\n      }" ({ "{") (labeled_statement "LAB_002c5380:\n        uVar17 = uVar47 - 0x85;" (statement_identifier "LAB_002c5380") (: ":") (expression_statement "uVar17 = uVar47 - 0x85;" (assignment_expression "uVar17 = uVar47 - 0x85" (identifier "uVar17") (= "=") (binary_expression "uVar47 - 0x85" (identifier "uVar47") (- "-") (number_literal "0x85"))) (; ";"))) (if_statement "if (local_f4 < 0xd) {\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }\n        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }" (if "if") (parenthesized_expression "(local_f4 < 0xd)" (( "(") (binary_expression "local_f4 < 0xd" (identifier "local_f4") (< "<") (number_literal "0xd")) () ")")) (compound_statement "{\n          uVar36 = (uint)*param_10;\n          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;\n          uVar45 = (uVar36 & 0xff00) << 8;\n          uVar32 = uVar36 << 0x18;\n          uVar31 = uVar19 | uVar45 | uVar32;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          uVar15 = (ushort)(uVar32 >> 0x10);\n          if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }\nLAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;\n          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;\n        }" ({ "{") (expression_statement "uVar36 = (uint)*param_10;" (assignment_expression "uVar36 = (uint)*param_10" (identifier "uVar36") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;" (assignment_expression "uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (identifier "uVar19") (= "=") (binary_expression "uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8" (binary_expression "uVar36 >> 0x18" (identifier "uVar36") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar36 & 0xff0000) >> 8" (parenthesized_expression "(uVar36 & 0xff0000)" (( "(") (binary_expression "uVar36 & 0xff0000" (identifier "uVar36") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8")))) (; ";")) (expression_statement "uVar45 = (uVar36 & 0xff00) << 8;" (assignment_expression "uVar45 = (uVar36 & 0xff00) << 8" (identifier "uVar45") (= "=") (binary_expression "(uVar36 & 0xff00) << 8" (parenthesized_expression "(uVar36 & 0xff00)" (( "(") (binary_expression "uVar36 & 0xff00" (identifier "uVar36") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (; ";")) (expression_statement "uVar32 = uVar36 << 0x18;" (assignment_expression "uVar32 = uVar36 << 0x18" (identifier "uVar32") (= "=") (binary_expression "uVar36 << 0x18" (identifier "uVar36") (<< "<<") (number_literal "0x18"))) (; ";")) (expression_statement "uVar31 = uVar19 | uVar45 | uVar32;" (assignment_expression "uVar31 = uVar19 | uVar45 | uVar32" (identifier "uVar31") (= "=") (binary_expression "uVar19 | uVar45 | uVar32" (binary_expression "uVar19 | uVar45" (identifier "uVar19") (| "|") (identifier "uVar45")) (| "|") (identifier "uVar32"))) (; ";")) (expression_statement "uVar29 = (ushort)(uVar31 >> 0x10);" (assignment_expression "uVar29 = (ushort)(uVar31 >> 0x10)" (identifier "uVar29") (= "=") (call_expression "(ushort)(uVar31 >> 0x10)" (parenthesized_expression "(ushort)" (( "(") (identifier "ushort") () ")")) (argument_list "(uVar31 >> 0x10)" (( "(") (binary_expression "uVar31 >> 0x10" (identifier "uVar31") (>> ">>") (number_literal "0x10")) () ")")))) (; ";")) (expression_statement "uVar15 = (ushort)(uVar32 >> 0x10);" (assignment_expression "uVar15 = (ushort)(uVar32 >> 0x10)" (identifier "uVar15") (= "=") (call_expression "(ushort)(uVar32 >> 0x10)" (parenthesized_expression "(ushort)" (( "(") (identifier "ushort") () ")")) (argument_list "(uVar32 >> 0x10)" (( "(") (binary_expression "uVar32 >> 0x10" (identifier "uVar32") (>> ">>") (number_literal "0x10")) () ")")))) (; ";")) (if_statement "if (uVar17 < 0x29) {\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }\n          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }" (if "if") (parenthesized_expression "(uVar17 < 0x29)" (( "(") (binary_expression "uVar17 < 0x29" (identifier "uVar17") (< "<") (number_literal "0x29")) () ")")) (compound_statement "{\n            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }\n          }" ({ "{") (if_statement "if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }" (if "if") (parenthesized_expression "((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0)" (( "(") (binary_expression "(0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0" (parenthesized_expression "(0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1)" (( "(") (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f)" (number_literal "0x1b3e1fff3ffU") (>> ">>") (parenthesized_expression "((ulong)uVar17 & 0x3f)" (( "(") (binary_expression "(ulong)uVar17 & 0x3f" (cast_expression "(ulong)uVar17" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar17")) (& "&") (number_literal "0x3f")) () ")"))) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);\n              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;\n            }" ({ "{") (labeled_statement "LAB_002c5754:\n              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);" (statement_identifier "LAB_002c5754") (: ":") (expression_statement "uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13);" (assignment_expression "uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13)" (identifier "uVar29") (= "=") (binary_expression "uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |\n                       (ushort)((uVar36 & 0xff0000) >> 0x13)" (binary_expression "uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0" (binary_expression "uVar15 & 0xf800" (identifier "uVar15") (& "&") (number_literal "0xf800")) (| "|") (binary_expression "(ushort)uVar19 & 0x7e0" (cast_expression "(ushort)uVar19" (( "(") (type_descriptor "ushort" (type_identifier "ushort")) () ")") (identifier "uVar19")) (& "&") (number_literal "0x7e0"))) (| "|") (call_expression "(ushort)((uVar36 & 0xff0000) >> 0x13)" (parenthesized_expression "(ushort)" (( "(") (identifier "ushort") () ")")) (argument_list "((uVar36 & 0xff0000) >> 0x13)" (( "(") (binary_expression "(uVar36 & 0xff0000) >> 0x13" (parenthesized_expression "(uVar36 & 0xff0000)" (( "(") (binary_expression "uVar36 & 0xff0000" (identifier "uVar36") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "0x13")) () ")"))))) (; ";"))) (expression_statement "uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;" (assignment_expression "uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f" (identifier "uVar31") (= "=") (binary_expression "(uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f" (binary_expression "(uVar45 | uVar32) >> 0xb" (parenthesized_expression "(uVar45 | uVar32)" (( "(") (binary_expression "uVar45 | uVar32" (identifier "uVar45") (| "|") (identifier "uVar32")) () ")")) (>> ">>") (number_literal "0xb")) (| "|") (binary_expression "uVar36 >> 0x18 & 0x1f" (binary_expression "uVar36 >> 0x18" (identifier "uVar36") (>> ">>") (number_literal "0x18")) (& "&") (number_literal "0x1f")))) (; ";")) (} "}"))) (} "}")) (else_clause "else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }" (else "else") (if_statement "if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }" (if "if") (parenthesized_expression "(((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100))" (( "(") (binary_expression "((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)" (parenthesized_expression "((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4)" (( "(") (binary_expression "(uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4" (parenthesized_expression "(uVar47 == 0x85 || uVar47 == 100)" (( "(") (binary_expression "uVar47 == 0x85 || uVar47 == 100" (binary_expression "uVar47 == 0x85" (identifier "uVar47") (== "==") (number_literal "0x85")) (|| "||") (binary_expression "uVar47 == 100" (identifier "uVar47") (== "==") (number_literal "100"))) () ")")) (|| "||") (binary_expression "uVar47 == 4" (identifier "uVar47") (== "==") (number_literal "4"))) () ")")) (|| "||") (parenthesized_expression "(uVar47 != 100)" (( "(") (binary_expression "uVar47 != 100" (identifier "uVar47") (!= "!=") (number_literal "100")) () ")"))) () ")")) (compound_statement "{\n            if (uVar47 != 100) goto LAB_002c5754;\n            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;\n          }" ({ "{") (if_statement "if (uVar47 != 100) goto LAB_002c5754;" (if "if") (parenthesized_expression "(uVar47 != 100)" (( "(") (binary_expression "uVar47 != 100" (identifier "uVar47") (!= "!=") (number_literal "100")) () ")")) (goto_statement "goto LAB_002c5754;" (goto "goto") (statement_identifier "LAB_002c5754") (; ";"))) (expression_statement "uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;" (assignment_expression "uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00" (identifier "uVar29") (= "=") (binary_expression "uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00" (binary_expression "uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb)" (binary_expression "uVar29 >> 5 & 0x1f" (binary_expression "uVar29 >> 5" (identifier "uVar29") (>> ">>") (number_literal "5")) (& "&") (number_literal "0x1f")) (| "|") (call_expression "(ushort)((uVar45 & 0x1f0000) >> 0xb)" (parenthesized_expression "(ushort)" (( "(") (identifier "ushort") () ")")) (argument_list "((uVar45 & 0x1f0000) >> 0xb)" (( "(") (binary_expression "(uVar45 & 0x1f0000) >> 0xb" (parenthesized_expression "(uVar45 & 0x1f0000)" (( "(") (binary_expression "uVar45 & 0x1f0000" (identifier "uVar45") (& "&") (number_literal "0x1f0000")) () ")")) (>> ">>") (number_literal "0xb")) () ")")))) (| "|") (binary_expression "uVar15 & 0xfc00" (identifier "uVar15") (& "&") (number_literal "0xfc00")))) (; ";")) (} "}"))))) (labeled_statement "LAB_002c5471:\n          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;" (statement_identifier "LAB_002c5471") (: ":") (expression_statement "*(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;" (assignment_expression "*(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8" (pointer_expression "*(ushort *)((long)param_10 + 2)" (* "*") (cast_expression "(ushort *)((long)param_10 + 2)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_10 + 2)" (( "(") (binary_expression "(long)param_10 + 2" (cast_expression "(long)param_10" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_10")) (+ "+") (number_literal "2")) () ")")))) (= "=") (binary_expression "(ushort)uVar31 << 8 | (ushort)uVar31 >> 8" (binary_expression "(ushort)uVar31 << 8" (cast_expression "(ushort)uVar31" (( "(") (type_descriptor "ushort" (type_identifier "ushort")) () ")") (identifier "uVar31")) (<< "<<") (number_literal "8")) (| "|") (binary_expression "(ushort)uVar31 >> 8" (cast_expression "(ushort)uVar31" (( "(") (type_descriptor "ushort" (type_identifier "ushort")) () ")") (identifier "uVar31")) (>> ">>") (number_literal "8")))) (; ";"))) (expression_statement "*(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;" (assignment_expression "*(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8" (pointer_expression "*(ushort *)param_10" (* "*") (cast_expression "(ushort *)param_10" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_10"))) (= "=") (binary_expression "uVar29 << 8 | uVar29 >> 8" (binary_expression "uVar29 << 8" (identifier "uVar29") (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar29 >> 8" (identifier "uVar29") (>> ">>") (number_literal "8")))) (; ";")) (} "}")) (else_clause "else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }" (else "else") (if_statement "if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)) {\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }" (if "if") (parenthesized_expression "(((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b))" (( "(") (binary_expression "((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&\n                (1 < uVar47 - 0x8b)" (parenthesized_expression "((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0))" (( "(") (binary_expression "(uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)" (parenthesized_expression "(uVar17 < 0x29)" (( "(") (binary_expression "uVar17 < 0x29" (identifier "uVar17") (< "<") (number_literal "0x29")) () ")")) (&& "&&") (parenthesized_expression "((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)" (( "(") (binary_expression "(0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0" (parenthesized_expression "(0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1)" (( "(") (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1" (binary_expression "0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f)" (number_literal "0x1b3e1fff3ffU") (>> ">>") (parenthesized_expression "((ulong)uVar17 & 0x3f)" (( "(") (binary_expression "(ulong)uVar17 & 0x3f" (cast_expression "(ulong)uVar17" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar17")) (& "&") (number_literal "0x3f")) () ")"))) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(1 < uVar47 - 0x8b)" (( "(") (binary_expression "1 < uVar47 - 0x8b" (number_literal "1") (< "<") (binary_expression "uVar47 - 0x8b" (identifier "uVar47") (- "-") (number_literal "0x8b"))) () ")"))) () ")")) (compound_statement "{\n          uVar17 = (uint)*param_10;\n          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;\n          uVar29 = (ushort)(uVar31 >> 0x10);\n          goto LAB_002c5471;\n        }" ({ "{") (expression_statement "uVar17 = (uint)*param_10;" (assignment_expression "uVar17 = (uint)*param_10" (identifier "uVar17") (= "=") (binary_expression "(uint)*param_10" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "param_10"))) (; ";")) (expression_statement "uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18;" (assignment_expression "uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18" (identifier "uVar31") (= "=") (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                   uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" (identifier "uVar17") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" (( "(") (binary_expression "uVar17 & 0xff0000" (identifier "uVar17") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" (( "(") (binary_expression "uVar17 & 0xff00" (identifier "uVar17") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar17 << 0x18" (identifier "uVar17") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "uVar29 = (ushort)(uVar31 >> 0x10);" (assignment_expression "uVar29 = (ushort)(uVar31 >> 0x10)" (identifier "uVar29") (= "=") (call_expression "(ushort)(uVar31 >> 0x10)" (parenthesized_expression "(ushort)" (( "(") (identifier "ushort") () ")")) (argument_list "(uVar31 >> 0x10)" (( "(") (binary_expression "uVar31 >> 0x10" (identifier "uVar31") (>> ">>") (number_literal "0x10")) () ")")))) (; ";")) (goto_statement "goto LAB_002c5471;" (goto "goto") (statement_identifier "LAB_002c5471") (; ";")) (} "}"))))) (if_statement "if (uVar16 == 1) {\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }\n        else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }" (if "if") (parenthesized_expression "(uVar16 == 1)" (( "(") (binary_expression "uVar16 == 1" (identifier "uVar16") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n          if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }\n        }" ({ "{") (if_statement "if (param_8 == (undefined8 *)0x0) {\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }\n          else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }" (if "if") (parenthesized_expression "(param_8 == (undefined8 *)0x0)" (( "(") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            lVar30 = plVar3[1];\n            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");\n            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);\n          }" ({ "{") (expression_statement "lVar30 = plVar3[1];" (assignment_expression "lVar30 = plVar3[1]" (identifier "lVar30") (= "=") (subscript_expression "plVar3[1]" (identifier "plVar3") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");" (assignment_expression "uVar21 = gettext("relocation overflow: %u against local symbol %u in %s")" (identifier "uVar21") (= "=") (call_expression "gettext("relocation overflow: %u against local symbol %u in %s")" (identifier "gettext") (argument_list "("relocation overflow: %u against local symbol %u in %s")" (( "(") (string_literal ""relocation overflow: %u against local symbol %u in %s"" (" """) (string_content "relocation overflow: %u against local symbol %u in %s") (" """)) () ")")))) (; ";")) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30)" (identifier "FUN_0034aed0") (argument_list "(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30)" (( "(") (identifier "param_2") (, ",") (identifier "param_6") (, ",") (identifier "uVar35") (, ",") (identifier "uVar21") (, ",") (identifier "uVar47") (, ",") (identifier "uVar7") (, ",") (identifier "lVar30") () ")"))) (; ";")) (} "}")) (else_clause "else {\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }" (else "else") (compound_statement "{\n            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }\n            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            FUN_0049e340();\n          }" ({ "{") (if_statement "if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }\n            else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }" (if "if") (parenthesized_expression "((*(byte *)((long)param_8 + 0x3a) & 7) == 0)" (( "(") (binary_expression "(*(byte *)((long)param_8 + 0x3a) & 7) == 0" (parenthesized_expression "(*(byte *)((long)param_8 + 0x3a) & 7)" (( "(") (binary_expression "*(byte *)((long)param_8 + 0x3a) & 7" (pointer_expression "*(byte *)((long)param_8 + 0x3a)" (* "*") (cast_expression "(byte *)((long)param_8 + 0x3a)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x3a)" (( "(") (binary_expression "(long)param_8 + 0x3a" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x3a")) () ")")))) (& "&") (number_literal "7")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }\n            }" ({ "{") (if_statement "if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }\n              else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }" (if "if") (parenthesized_expression "((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0)" (( "(") (binary_expression "(*(byte *)((long)param_8 + 0x3b) & 0x20) == 0" (parenthesized_expression "(*(byte *)((long)param_8 + 0x3b) & 0x20)" (( "(") (binary_expression "*(byte *)((long)param_8 + 0x3b) & 0x20" (pointer_expression "*(byte *)((long)param_8 + 0x3b)" (* "*") (cast_expression "(byte *)((long)param_8 + 0x3b)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x3b)" (( "(") (binary_expression "(long)param_8 + 0x3b" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x3b")) () ")")))) (& "&") (number_literal "0x20")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                bVar52 = FUN_00443190();\n                bVar52 = bVar52 ^ 1;\n              }" ({ "{") (expression_statement "bVar52 = FUN_00443190();" (assignment_expression "bVar52 = FUN_00443190()" (identifier "bVar52") (= "=") (call_expression "FUN_00443190()" (identifier "FUN_00443190") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "bVar52 = bVar52 ^ 1;" (assignment_expression "bVar52 = bVar52 ^ 1" (identifier "bVar52") (= "=") (binary_expression "bVar52 ^ 1" (identifier "bVar52") (^ "^") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }" (else "else") (compound_statement "{\n                bVar52 = *(int *)(param_8 + 3) != 0;\n              }" ({ "{") (expression_statement "bVar52 = *(int *)(param_8 + 3) != 0;" (assignment_expression "bVar52 = *(int *)(param_8 + 3) != 0" (identifier "bVar52") (= "=") (binary_expression "*(int *)(param_8 + 3) != 0" (pointer_expression "*(int *)(param_8 + 3)" (* "*") (cast_expression "(int *)(param_8 + 3)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 3)" (( "(") (binary_expression "param_8 + 3" (identifier "param_8") (+ "+") (number_literal "3")) () ")")))) (!= "!=") (number_literal "0"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }" (else "else") (compound_statement "{\n              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;\n            }" ({ "{") (expression_statement "bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;" (assignment_expression "bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4" (identifier "bVar52") (= "=") (binary_expression "(*(byte *)((long)param_8 + 0x3a) & 7) != 4" (parenthesized_expression "(*(byte *)((long)param_8 + 0x3a) & 7)" (( "(") (binary_expression "*(byte *)((long)param_8 + 0x3a) & 7" (pointer_expression "*(byte *)((long)param_8 + 0x3a)" (* "*") (cast_expression "(byte *)((long)param_8 + 0x3a)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x3a)" (( "(") (binary_expression "(long)param_8 + 0x3a" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x3a")) () ")")))) (& "&") (number_literal "7")) () ")")) (!= "!=") (number_literal "4"))) (; ";")) (} "}")))) (if_statement "if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }\n            else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }" (if "if") (parenthesized_expression "((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0))" (( "(") (binary_expression "(bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)" (parenthesized_expression "(bVar52 == 0)" (( "(") (binary_expression "bVar52 == 0" (identifier "bVar52") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "((*(byte *)((long)param_8 + 0x3a) & 7) != 0)" (( "(") (binary_expression "(*(byte *)((long)param_8 + 0x3a) & 7) != 0" (parenthesized_expression "(*(byte *)((long)param_8 + 0x3a) & 7)" (( "(") (binary_expression "*(byte *)((long)param_8 + 0x3a) & 7" (pointer_expression "*(byte *)((long)param_8 + 0x3a)" (* "*") (cast_expression "(byte *)((long)param_8 + 0x3a)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x3a)" (( "(") (binary_expression "(long)param_8 + 0x3a" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x3a")) () ")")))) (& "&") (number_literal "7")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar21 = gettext("relocation overflow: %u against \'%s\'");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }" ({ "{") (expression_statement "FUN_004443d0(local_58,param_8);" (call_expression "FUN_004443d0(local_58,param_8)" (identifier "FUN_004443d0") (argument_list "(local_58,param_8)" (( "(") (identifier "local_58") (, ",") (identifier "param_8") () ")"))) (; ";")) (expression_statement "puVar8 = local_58[0];" (assignment_expression "puVar8 = local_58[0]" (identifier "puVar8") (= "=") (subscript_expression "local_58[0]" (identifier "local_58") ([ "[") (number_literal "0") (] "]"))) (; ";")) (expression_statement "uVar21 = gettext("relocation overflow: %u against \'%s\'");" (assignment_expression "uVar21 = gettext("relocation overflow: %u against \'%s\'")" (identifier "uVar21") (= "=") (call_expression "gettext("relocation overflow: %u against \'%s\'")" (identifier "gettext") (argument_list "("relocation overflow: %u against \'%s\'")" (( "(") (string_literal ""relocation overflow: %u against \'%s\'"" (" """) (string_content "relocation overflow: %u against ") (escape_sequence "\'") (string_content "%s") (escape_sequence "\'") (" """)) () ")")))) (; ";")) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8)" (identifier "FUN_0034aed0") (argument_list "(param_2,param_6,uVar35,uVar21,uVar47,puVar8)" (( "(") (identifier "param_2") (, ",") (identifier "param_6") (, ",") (identifier "uVar35") (, ",") (identifier "uVar21") (, ",") (identifier "uVar47") (, ",") (identifier "puVar8") () ")"))) (; ";")) (if_statement "if (local_58[0] == auStack_48) goto LAB_002c53ec;" (if "if") (parenthesized_expression "(local_58[0] == auStack_48)" (( "(") (binary_expression "local_58[0] == auStack_48" (subscript_expression "local_58[0]" (identifier "local_58") ([ "[") (number_literal "0") (] "]")) (== "==") (identifier "auStack_48")) () ")")) (goto_statement "goto LAB_002c53ec;" (goto "goto") (statement_identifier "LAB_002c53ec") (; ";"))) (} "}")) (else_clause "else {\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }" (else "else") (compound_statement "{\n              uVar21 = *(undefined8 *)(param_8[2] + 8);\n              FUN_004443d0(local_58,param_8);\n              puVar8 = local_58[0];\n              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");\n                    \n              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);\n              if (local_58[0] == auStack_48) goto LAB_002c53ec;\n            }" ({ "{") (expression_statement "uVar21 = *(undefined8 *)(param_8[2] + 8);" (assignment_expression "uVar21 = *(undefined8 *)(param_8[2] + 8)" (identifier "uVar21") (= "=") (pointer_expression "*(undefined8 *)(param_8[2] + 8)" (* "*") (cast_expression "(undefined8 *)(param_8[2] + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8[2] + 8)" (( "(") (binary_expression "param_8[2] + 8" (subscript_expression "param_8[2]" (identifier "param_8") ([ "[") (number_literal "2") (] "]")) (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "FUN_004443d0(local_58,param_8);" (call_expression "FUN_004443d0(local_58,param_8)" (identifier "FUN_004443d0") (argument_list "(local_58,param_8)" (( "(") (identifier "local_58") (, ",") (identifier "param_8") () ")"))) (; ";")) (expression_statement "puVar8 = local_58[0];" (assignment_expression "puVar8 = local_58[0]" (identifier "puVar8") (= "=") (subscript_expression "local_58[0]" (identifier "local_58") ([ "[") (number_literal "0") (] "]"))) (; ";")) (expression_statement "uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");" (assignment_expression "uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s")" (identifier "uVar22") (= "=") (call_expression "gettext("relocation overflow: %u against \'%s\' defined in %s")" (identifier "gettext") (argument_list "("relocation overflow: %u against \'%s\' defined in %s")" (( "(") (string_literal ""relocation overflow: %u against \'%s\' defined in %s"" (" """) (string_content "relocation overflow: %u against ") (escape_sequence "\'") (string_content "%s") (escape_sequence "\'") (string_content " defined in %s") (" """)) () ")")))) (; ";")) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21)" (identifier "FUN_0034aed0") (argument_list "(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21)" (( "(") (identifier "param_2") (, ",") (identifier "param_6") (, ",") (identifier "uVar35") (, ",") (identifier "uVar22") (, ",") (identifier "uVar47") (, ",") (identifier "puVar8") (, ",") (identifier "uVar21") () ")"))) (; ";")) (if_statement "if (local_58[0] == auStack_48) goto LAB_002c53ec;" (if "if") (parenthesized_expression "(local_58[0] == auStack_48)" (( "(") (binary_expression "local_58[0] == auStack_48" (subscript_expression "local_58[0]" (identifier "local_58") ([ "[") (number_literal "0") (] "]")) (== "==") (identifier "auStack_48")) () ")")) (goto_statement "goto LAB_002c53ec;" (goto "goto") (statement_identifier "LAB_002c53ec") (; ";"))) (} "}")))) (expression_statement "FUN_0049e340();" (call_expression "FUN_0049e340()" (identifier "FUN_0049e340") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }" (else "else") (if_statement "if (uVar16 != 0) {\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }" (if "if") (parenthesized_expression "(uVar16 != 0)" (( "(") (binary_expression "uVar16 != 0" (identifier "uVar16") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }\n          uVar21 = gettext(pcVar42);\n          FUN_0034aed0(param_2,param_6,uVar35,uVar21);\n        }" ({ "{") (if_statement "if (uVar16 == 2) {\n            pcVar42 = "unexpected opcode while processing relocation";\n          }\n          else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }" (if "if") (parenthesized_expression "(uVar16 == 2)" (( "(") (binary_expression "uVar16 == 2" (identifier "uVar16") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n            pcVar42 = "unexpected opcode while processing relocation";\n          }" ({ "{") (expression_statement "pcVar42 = "unexpected opcode while processing relocation";" (assignment_expression "pcVar42 = "unexpected opcode while processing relocation"" (identifier "pcVar42") (= "=") (string_literal ""unexpected opcode while processing relocation"" (" """) (string_content "unexpected opcode while processing relocation") (" """))) (; ";")) (} "}")) (else_clause "else {\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }" (else "else") (compound_statement "{\n            if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }\n            pcVar42 = "unaligned PC-relative relocation";\n          }" ({ "{") (if_statement "if (uVar16 != 3) {\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }" (if "if") (parenthesized_expression "(uVar16 != 3)" (( "(") (binary_expression "uVar16 != 3" (identifier "uVar16") (!= "!=") (number_literal "3")) () ")")) (compound_statement "{\n                    \n              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");\n            }" ({ "{") (expression_statement "FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x3035,"relocate")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x3035,"relocate")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x3035") (, ",") (string_literal ""relocate"" (" """) (string_content "relocate") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar42 = "unaligned PC-relative relocation";" (assignment_expression "pcVar42 = "unaligned PC-relative relocation"" (identifier "pcVar42") (= "=") (string_literal ""unaligned PC-relative relocation"" (" """) (string_content "unaligned PC-relative relocation") (" """))) (; ";")) (} "}")))) (expression_statement "uVar21 = gettext(pcVar42);" (assignment_expression "uVar21 = gettext(pcVar42)" (identifier "uVar21") (= "=") (call_expression "gettext(pcVar42)" (identifier "gettext") (argument_list "(pcVar42)" (( "(") (identifier "pcVar42") () ")")))) (; ";")) (expression_statement "FUN_0034aed0(param_2,param_6,uVar35,uVar21);" (call_expression "FUN_0034aed0(param_2,param_6,uVar35,uVar21)" (identifier "FUN_0034aed0") (argument_list "(param_2,param_6,uVar35,uVar21)" (( "(") (identifier "param_2") (, ",") (identifier "param_6") (, ",") (identifier "uVar35") (, ",") (identifier "uVar21") () ")"))) (; ";")) (} "}"))))) (labeled_statement "LAB_002c53ec:\n        FUN_001a5bc0(&local_78);" (statement_identifier "LAB_002c53ec") (: ":") (expression_statement "FUN_001a5bc0(&local_78);" (call_expression "FUN_001a5bc0(&local_78)" (identifier "FUN_001a5bc0") (argument_list "(&local_78)" (( "(") (pointer_expression "&local_78" (& "&") (identifier "local_78")) () ")"))) (; ";"))) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "uVar17 = *puVar44;" (assignment_expression "uVar17 = *puVar44" (identifier "uVar17") (= "=") (pointer_expression "*puVar44" (* "*") (identifier "puVar44"))) (; ";")) (goto_statement "goto LAB_002c4f1d;" (goto "goto") (statement_identifier "LAB_002c4f1d") (; ";")) (} "}"))) (expression_statement "FUN_00290a30();" (call_expression "FUN_00290a30()" (identifier "FUN_00290a30") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto LAB_002c8217;" (goto "goto") (statement_identifier "LAB_002c8217") (; ";")) (} "}"))) (goto_statement "goto LAB_002c52f0;" (goto "goto") (statement_identifier "LAB_002c52f0") (; ";")) (labeled_statement "LAB_002c82c4:\n  FUN_00293370();" (statement_identifier "LAB_002c82c4") (: ":") (expression_statement "FUN_00293370();" (call_expression "FUN_00293370()" (identifier "FUN_00293370") (argument_list "()" (( "(") () ")"))) (; ";"))) (labeled_statement "LAB_002c82c9:\n  uVar36 = (uint)uVar34;" (statement_identifier "LAB_002c82c9") (: ":") (expression_statement "uVar36 = (uint)uVar34;" (assignment_expression "uVar36 = (uint)uVar34" (identifier "uVar36") (= "=") (cast_expression "(uint)uVar34" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar34"))) (; ";"))) (if_statement "if ((char)puVar44 == '\0') {\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }\n  else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }\n  }" (if "if") (parenthesized_expression "((char)puVar44 == '\0')" (( "(") (binary_expression "(char)puVar44 == '\0'" (cast_expression "(char)puVar44" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "puVar44")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_002c5869:\n    lVar30 = param_8[0x10];\nLAB_002c5870:\n    local_d0 = (uint *)&local_78;\n    local_68 = FUN_00298450(lVar30,lVar30 + 8);\n    param_9 = local_d0;\n    bVar48 = true;\n    local_e1 = true;\n  }" ({ "{") (labeled_statement "LAB_002c5869:\n    lVar30 = param_8[0x10];" (statement_identifier "LAB_002c5869") (: ":") (expression_statement "lVar30 = param_8[0x10];" (assignment_expression "lVar30 = param_8[0x10]" (identifier "lVar30") (= "=") (subscript_expression "param_8[0x10]" (identifier "param_8") ([ "[") (number_literal "0x10") (] "]"))) (; ";"))) (labeled_statement "LAB_002c5870:\n    local_d0 = (uint *)&local_78;" (statement_identifier "LAB_002c5870") (: ":") (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" (identifier "local_d0") (= "=") (cast_expression "(uint *)&local_78" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_78" (& "&") (identifier "local_78")))) (; ";"))) (expression_statement "local_68 = FUN_00298450(lVar30,lVar30 + 8);" (assignment_expression "local_68 = FUN_00298450(lVar30,lVar30 + 8)" (identifier "local_68") (= "=") (call_expression "FUN_00298450(lVar30,lVar30 + 8)" (identifier "FUN_00298450") (argument_list "(lVar30,lVar30 + 8)" (( "(") (identifier "lVar30") (, ",") (binary_expression "lVar30 + 8" (identifier "lVar30") (+ "+") (number_literal "8")) () ")")))) (; ";")) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" (identifier "param_9") (= "=") (identifier "local_d0")) (; ";")) (expression_statement "bVar48 = true;" (assignment_expression "bVar48 = true" (identifier "bVar48") (= "=") (true "true")) (; ";")) (expression_statement "local_e1 = true;" (assignment_expression "local_e1 = true" (identifier "local_e1") (= "=") (true "true")) (; ";")) (} "}")) (else_clause "else {\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }\n  }" (else "else") (compound_statement "{\nLAB_002c4d83:\n    uVar36 = (uint)uVar34;\n    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;\n    bVar48 = true;\nLAB_002c4d98:\n    local_d0 = (uint *)&local_78;\n    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }\n  }" ({ "{") (labeled_statement "LAB_002c4d83:\n    uVar36 = (uint)uVar34;" (statement_identifier "LAB_002c4d83") (: ":") (expression_statement "uVar36 = (uint)uVar34;" (assignment_expression "uVar36 = (uint)uVar34" (identifier "uVar36") (= "=") (cast_expression "(uint)uVar34" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar34"))) (; ";"))) (if_statement "if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;" (if "if") (parenthesized_expression "(*(int *)((long)param_8 + 0x4c) != -1)" (( "(") (binary_expression "*(int *)((long)param_8 + 0x4c) != -1" (pointer_expression "*(int *)((long)param_8 + 0x4c)" (* "*") (cast_expression "(int *)((long)param_8 + 0x4c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x4c)" (( "(") (binary_expression "(long)param_8 + 0x4c" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x4c")) () ")")))) (!= "!=") (number_literal "-1")) () ")")) (goto_statement "goto LAB_002c5256;" (goto "goto") (statement_identifier "LAB_002c5256") (; ";"))) (expression_statement "bVar48 = true;" (assignment_expression "bVar48 = true" (identifier "bVar48") (= "=") (true "true")) (; ";")) (labeled_statement "LAB_002c4d98:\n    local_d0 = (uint *)&local_78;" (statement_identifier "LAB_002c4d98") (: ":") (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" (identifier "local_d0") (= "=") (cast_expression "(uint *)&local_78" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_78" (& "&") (identifier "local_78")))) (; ";"))) (if_statement "if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)) {\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }" (if "if") (parenthesized_expression "(((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1))" (( "(") (binary_expression "((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&\n       (*(int *)(param_8 + 0xd) != -1)" (parenthesized_expression "((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1))" (( "(") (binary_expression "(*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)" (parenthesized_expression "(*(int *)((long)param_8 + 0x24) != -1)" (( "(") (binary_expression "*(int *)((long)param_8 + 0x24) != -1" (pointer_expression "*(int *)((long)param_8 + 0x24)" (* "*") (cast_expression "(int *)((long)param_8 + 0x24)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x24)" (( "(") (binary_expression "(long)param_8 + 0x24" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x24")) () ")")))) (!= "!=") (number_literal "-1")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)((long)param_8 + 0x6c) != -1)" (( "(") (binary_expression "*(int *)((long)param_8 + 0x6c) != -1" (pointer_expression "*(int *)((long)param_8 + 0x6c)" (* "*") (cast_expression "(int *)((long)param_8 + 0x6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x6c)" (( "(") (binary_expression "(long)param_8 + 0x6c" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x6c")) () ")")))) (!= "!=") (number_literal "-1")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(int *)(param_8 + 0xd) != -1)" (( "(") (binary_expression "*(int *)(param_8 + 0xd) != -1" (pointer_expression "*(int *)(param_8 + 0xd)" (* "*") (cast_expression "(int *)(param_8 + 0xd)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_8 + 0xd)" (( "(") (binary_expression "param_8 + 0xd" (identifier "param_8") (+ "+") (number_literal "0xd")) () ")")))) (!= "!=") (number_literal "-1")) () ")"))) () ")")) (compound_statement "{\n      lVar30 = *(long *)(param_4 + 0x30);\n      if (lVar30 == 0) goto LAB_002c833d;\n      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }\n                    \n      FUN_00291e90();\n    }" ({ "{") (expression_statement "lVar30 = *(long *)(param_4 + 0x30);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x30)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x30)" (* "*") (cast_expression "(long *)(param_4 + 0x30)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x30)" (( "(") (binary_expression "param_4 + 0x30" (identifier "param_4") (+ "+") (number_literal "0x30")) () ")"))))) (; ";")) (if_statement "if (lVar30 == 0) goto LAB_002c833d;" (if "if") (parenthesized_expression "(lVar30 == 0)" (( "(") (binary_expression "lVar30 == 0" (identifier "lVar30") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c833d;" (goto "goto") (statement_identifier "LAB_002c833d") (; ";"))) (if_statement "if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }" (if "if") (parenthesized_expression "((*(byte *)(lVar30 + 0x20) & 1) != 0)" (( "(") (binary_expression "(*(byte *)(lVar30 + 0x20) & 1) != 0" (parenthesized_expression "(*(byte *)(lVar30 + 0x20) & 1)" (( "(") (binary_expression "*(byte *)(lVar30 + 0x20) & 1" (pointer_expression "*(byte *)(lVar30 + 0x20)" (* "*") (cast_expression "(byte *)(lVar30 + 0x20)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x20)" (( "(") (binary_expression "lVar30 + 0x20" (identifier "lVar30") (+ "+") (number_literal "0x20")) () ")")))) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);\n        if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }\nLAB_002c83ab:\n        FUN_00290d80();\n      }" ({ "{") (expression_statement "local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);" (assignment_expression "local_68 = *(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8)" (identifier "local_68") (= "=") (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1 +\n                   *(int *)(lVar30 + 0x68)" (binary_expression "*(int *)((long)param_8 + 0x6c) + 1" (pointer_expression "*(int *)((long)param_8 + 0x6c)" (* "*") (cast_expression "(int *)((long)param_8 + 0x6c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)param_8 + 0x6c)" (( "(") (binary_expression "(long)param_8 + 0x6c" (cast_expression "(long)param_8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_8")) (+ "+") (number_literal "0x6c")) () ")")))) (+ "+") (number_literal "1")) (+ "+") (pointer_expression "*(int *)(lVar30 + 0x68)" (* "*") (cast_expression "(int *)(lVar30 + 0x68)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x68)" (( "(") (binary_expression "lVar30 + 0x68" (identifier "lVar30") (+ "+") (number_literal "0x68")) () ")"))))) (+ "+") (pointer_expression "*(int *)(lVar30 + 0x60)" (* "*") (cast_expression "(int *)(lVar30 + 0x60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x60)" (( "(") (binary_expression "lVar30 + 0x60" (identifier "lVar30") (+ "+") (number_literal "0x60")) () ")"))))) (+ "+") (pointer_expression "*(int *)(lVar30 + 8)" (* "*") (cast_expression "(int *)(lVar30 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 8)" (( "(") (binary_expression "lVar30 + 8" (identifier "lVar30") (+ "+") (number_literal "8")) () ")")))))) (; ";")) (if_statement "if (*(char *)(param_4 + 0x14) != '\0') {\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }" (if "if") (parenthesized_expression "(*(char *)(param_4 + 0x14) != '\0')" (( "(") (binary_expression "*(char *)(param_4 + 0x14) != '\0'" (pointer_expression "*(char *)(param_4 + 0x14)" (* "*") (cast_expression "(char *)(param_4 + 0x14)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x14)" (( "(") (binary_expression "param_4 + 0x14" (identifier "param_4") (+ "+") (number_literal "0x14")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;\n          param_9 = local_d0;\n          puVar44 = (uint *)(ulong)bVar49;\n          uVar17 = (uint)!bVar49;\n          goto LAB_002c4e20;\n        }" ({ "{") (expression_statement "bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;" (assignment_expression "bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0" (identifier "bVar49") (= "=") (binary_expression "(*(uint *)(param_4 + 0x10) & 0x2000000) == 0" (parenthesized_expression "(*(uint *)(param_4 + 0x10) & 0x2000000)" (( "(") (binary_expression "*(uint *)(param_4 + 0x10) & 0x2000000" (pointer_expression "*(uint *)(param_4 + 0x10)" (* "*") (cast_expression "(uint *)(param_4 + 0x10)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x10)" (( "(") (binary_expression "param_4 + 0x10" (identifier "param_4") (+ "+") (number_literal "0x10")) () ")")))) (& "&") (number_literal "0x2000000")) () ")")) (== "==") (number_literal "0"))) (; ";")) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" (identifier "param_9") (= "=") (identifier "local_d0")) (; ";")) (expression_statement "puVar44 = (uint *)(ulong)bVar49;" (assignment_expression "puVar44 = (uint *)(ulong)bVar49" (identifier "puVar44") (= "=") (cast_expression "(uint *)(ulong)bVar49" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (cast_expression "(ulong)bVar49" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "bVar49")))) (; ";")) (expression_statement "uVar17 = (uint)!bVar49;" (assignment_expression "uVar17 = (uint)!bVar49" (identifier "uVar17") (= "=") (cast_expression "(uint)!bVar49" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (unary_expression "!bVar49" (! "!") (identifier "bVar49")))) (; ";")) (goto_statement "goto LAB_002c4e20;" (goto "goto") (statement_identifier "LAB_002c4e20") (; ";")) (} "}"))) (labeled_statement "LAB_002c83ab:\n        FUN_00290d80();" (statement_identifier "LAB_002c83ab") (: ":") (expression_statement "FUN_00290d80();" (call_expression "FUN_00290d80()" (identifier "FUN_00290d80") (argument_list "()" (( "(") () ")"))) (; ";"))) (} "}"))) (expression_statement "FUN_00291e90();" (call_expression "FUN_00291e90()" (identifier "FUN_00291e90") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (} "}")))) (labeled_statement "LAB_002c4e20:\n  local_98._0_1_ = (byte)uVar17;" (statement_identifier "LAB_002c4e20") (: ":") (expression_statement "local_98._0_1_ = (byte)uVar17;" (assignment_expression "local_98._0_1_ = (byte)uVar17" (field_expression "local_98._0_1_" (identifier "local_98") (. ".") (field_identifier "_0_1_")) (= "=") (cast_expression "(byte)uVar17" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar17"))) (; ";"))) (expression_statement "bVar49 = (bool)((byte)local_98 & bVar48);" (assignment_expression "bVar49 = (bool)((byte)local_98 & bVar48)" (identifier "bVar49") (= "=") (cast_expression "(bool)((byte)local_98 & bVar48)" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (parenthesized_expression "((byte)local_98 & bVar48)" (( "(") (binary_expression "(byte)local_98 & bVar48" (cast_expression "(byte)local_98" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_98")) (& "&") (identifier "bVar48")) () ")")))) (; ";")) (goto_statement "goto joined_r0x002c52d3;" (goto "goto") (statement_identifier "joined_r0x002c52d3") (; ";")) (labeled_statement "switchD_002c4f87_caseD_9:\n  bVar48 = false;" (statement_identifier "switchD_002c4f87_caseD_9") (: ":") (expression_statement "bVar48 = false;" (assignment_expression "bVar48 = false" (identifier "bVar48") (= "=") (false "false")) (; ";"))) (labeled_statement "switchD_002c5379_caseD_9:\n  if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }" (statement_identifier "switchD_002c5379_caseD_9") (: ":") (if_statement "if (param_8 == (undefined8 *)0x0) {\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }" (if "if") (parenthesized_expression "(param_8 == (undefined8 *)0x0)" (( "(") (binary_expression "param_8 == (undefined8 *)0x0" (identifier "param_8") (== "==") (cast_expression "(undefined8 *)0x0" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }\n    goto LAB_002c624f;\n  }" ({ "{") (if_statement "if (param_3 == 4) {\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }\n    else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }" (if "if") (parenthesized_expression "(param_3 == 4)" (( "(") (binary_expression "param_3 == 4" (identifier "param_3") (== "==") (number_literal "4")) () ")")) (compound_statement "{\n      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);\n    }" ({ "{") (expression_statement "uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);" (assignment_expression "uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1)" (identifier "uVar16") (= "=") (call_expression "FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1)" (identifier "FUN_002c48c0") (argument_list "(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1)" (( "(") (identifier "param_10") (, ",") (identifier "plVar3") (, ",") (identifier "param_9") (, ",") (identifier "local_c8") (, ",") (identifier "bVar48") (, ",") (number_literal "0") (, ",") (identifier "param_4") (, ",") (identifier "uVar34") (, ",") (identifier "param_1") () ")")))) (; ";")) (} "}")) (else_clause "else {\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }" (else "else") (compound_statement "{\n      if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }\n      lVar30 = FUN_0049cb70(0x40);\n      *(undefined1 *)(lVar30 + 0x3c) = 0;\n      uVar16 = 0;\n      *(undefined4 *)(lVar30 + 0x38) = 0;\n      *(ulong **)(lVar30 + 0x10) = param_10;\n      *(long **)(lVar30 + 0x18) = plVar3;\n      *(uint **)(lVar30 + 0x20) = param_9;\n      *(uint *)(lVar30 + 0x28) = local_c8;\n      *(uint *)(lVar30 + 0x2c) = uVar17;\n      *(uint *)(lVar30 + 0x30) = uVar7;\n      *(bool *)(lVar30 + 0x34) = bVar48;\n      FUN_004a11e0(lVar30,&DAT_0067db20);\n      _DAT_0067db30 = _DAT_0067db30 + 1;\n    }" ({ "{") (if_statement "if (param_3 != 9) {\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }" (if "if") (parenthesized_expression "(param_3 != 9)" (( "(") (binary_expression "param_3 != 9" (identifier "param_3") (!= "!=") (number_literal "9")) () ")")) (compound_statement "{\nLAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");\n      }" ({ "{") (labeled_statement "LAB_002c8373:\n                    \n        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");" (statement_identifier "LAB_002c8373") (: ":") (expression_statement "FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");" (call_expression "FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate")" (identifier "FUN_00352af0") (argument_list "("../../gold/mips.cc",0x2f66,"relocate")" (( "(") (string_literal ""../../gold/mips.cc"" (" """) (string_content "../../gold/mips.cc") (" """)) (, ",") (number_literal "0x2f66") (, ",") (string_literal ""relocate"" (" """) (string_content "relocate") (" """)) () ")"))) (; ";"))) (} "}"))) (expression_statement "lVar30 = FUN_0049cb70(0x40);" (assignment_expression "lVar30 = FUN_0049cb70(0x40)" (identifier "lVar30") (= "=") (call_expression "FUN_0049cb70(0x40)" (identifier "FUN_0049cb70") (argument_list "(0x40)" (( "(") (number_literal "0x40") () ")")))) (; ";")) (expression_statement "*(undefined1 *)(lVar30 + 0x3c) = 0;" (assignment_expression "*(undefined1 *)(lVar30 + 0x3c) = 0" (pointer_expression "*(undefined1 *)(lVar30 + 0x3c)" (* "*") (cast_expression "(undefined1 *)(lVar30 + 0x3c)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x3c)" (( "(") (binary_expression "lVar30 + 0x3c" (identifier "lVar30") (+ "+") (number_literal "0x3c")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar16 = 0;" (assignment_expression "uVar16 = 0" (identifier "uVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(lVar30 + 0x38) = 0;" (assignment_expression "*(undefined4 *)(lVar30 + 0x38) = 0" (pointer_expression "*(undefined4 *)(lVar30 + 0x38)" (* "*") (cast_expression "(undefined4 *)(lVar30 + 0x38)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x38)" (( "(") (binary_expression "lVar30 + 0x38" (identifier "lVar30") (+ "+") (number_literal "0x38")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(ulong **)(lVar30 + 0x10) = param_10;" (assignment_expression "*(ulong **)(lVar30 + 0x10) = param_10" (pointer_expression "*(ulong **)(lVar30 + 0x10)" (* "*") (cast_expression "(ulong **)(lVar30 + 0x10)" (( "(") (type_descriptor "ulong **" (type_identifier "ulong") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(lVar30 + 0x10)" (( "(") (binary_expression "lVar30 + 0x10" (identifier "lVar30") (+ "+") (number_literal "0x10")) () ")")))) (= "=") (identifier "param_10")) (; ";")) (expression_statement "*(long **)(lVar30 + 0x18) = plVar3;" (assignment_expression "*(long **)(lVar30 + 0x18) = plVar3" (pointer_expression "*(long **)(lVar30 + 0x18)" (* "*") (cast_expression "(long **)(lVar30 + 0x18)" (( "(") (type_descriptor "long **" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(lVar30 + 0x18)" (( "(") (binary_expression "lVar30 + 0x18" (identifier "lVar30") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "plVar3")) (; ";")) (expression_statement "*(uint **)(lVar30 + 0x20) = param_9;" (assignment_expression "*(uint **)(lVar30 + 0x20) = param_9" (pointer_expression "*(uint **)(lVar30 + 0x20)" (* "*") (cast_expression "(uint **)(lVar30 + 0x20)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(lVar30 + 0x20)" (( "(") (binary_expression "lVar30 + 0x20" (identifier "lVar30") (+ "+") (number_literal "0x20")) () ")")))) (= "=") (identifier "param_9")) (; ";")) (expression_statement "*(uint *)(lVar30 + 0x28) = local_c8;" (assignment_expression "*(uint *)(lVar30 + 0x28) = local_c8" (pointer_expression "*(uint *)(lVar30 + 0x28)" (* "*") (cast_expression "(uint *)(lVar30 + 0x28)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x28)" (( "(") (binary_expression "lVar30 + 0x28" (identifier "lVar30") (+ "+") (number_literal "0x28")) () ")")))) (= "=") (identifier "local_c8")) (; ";")) (expression_statement "*(uint *)(lVar30 + 0x2c) = uVar17;" (assignment_expression "*(uint *)(lVar30 + 0x2c) = uVar17" (pointer_expression "*(uint *)(lVar30 + 0x2c)" (* "*") (cast_expression "(uint *)(lVar30 + 0x2c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x2c)" (( "(") (binary_expression "lVar30 + 0x2c" (identifier "lVar30") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (identifier "uVar17")) (; ";")) (expression_statement "*(uint *)(lVar30 + 0x30) = uVar7;" (assignment_expression "*(uint *)(lVar30 + 0x30) = uVar7" (pointer_expression "*(uint *)(lVar30 + 0x30)" (* "*") (cast_expression "(uint *)(lVar30 + 0x30)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x30)" (( "(") (binary_expression "lVar30 + 0x30" (identifier "lVar30") (+ "+") (number_literal "0x30")) () ")")))) (= "=") (identifier "uVar7")) (; ";")) (expression_statement "*(bool *)(lVar30 + 0x34) = bVar48;" (assignment_expression "*(bool *)(lVar30 + 0x34) = bVar48" (pointer_expression "*(bool *)(lVar30 + 0x34)" (* "*") (cast_expression "(bool *)(lVar30 + 0x34)" (( "(") (type_descriptor "bool *" (primitive_type "bool") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar30 + 0x34)" (( "(") (binary_expression "lVar30 + 0x34" (identifier "lVar30") (+ "+") (number_literal "0x34")) () ")")))) (= "=") (identifier "bVar48")) (; ";")) (expression_statement "FUN_004a11e0(lVar30,&DAT_0067db20);" (call_expression "FUN_004a11e0(lVar30,&DAT_0067db20)" (identifier "FUN_004a11e0") (argument_list "(lVar30,&DAT_0067db20)" (( "(") (identifier "lVar30") (, ",") (pointer_expression "&DAT_0067db20" (& "&") (identifier "DAT_0067db20")) () ")"))) (; ";")) (expression_statement "_DAT_0067db30 = _DAT_0067db30 + 1;" (assignment_expression "_DAT_0067db30 = _DAT_0067db30 + 1" (identifier "_DAT_0067db30") (= "=") (binary_expression "_DAT_0067db30 + 1" (identifier "_DAT_0067db30") (+ "+") (number_literal "1"))) (; ";")) (} "}")))) (goto_statement "goto LAB_002c624f;" (goto "goto") (statement_identifier "LAB_002c624f") (; ";")) (} "}")))) (if_statement "if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8333;" (if "if") (parenthesized_expression "(*(long *)(param_4 + 0x20) == 0)" (( "(") (binary_expression "*(long *)(param_4 + 0x20) == 0" (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c8333;" (goto "goto") (statement_identifier "LAB_002c8333") (; ";"))) (expression_statement "puVar40 = param_8;" (assignment_expression "puVar40 = param_8" (identifier "puVar40") (= "=") (identifier "param_8")) (; ";")) (expression_statement "local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);" (assignment_expression "local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3)" (identifier "local_e8") (= "=") (call_expression "FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3)" (identifier "FUN_0029b910") (argument_list "(*(long *)(param_4 + 0x20),param_8,0,plVar3)" (( "(") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")")))) (, ",") (identifier "param_8") (, ",") (number_literal "0") (, ",") (identifier "plVar3") () ")")))) (; ";")) (expression_statement "local_98._0_1_ = (byte)puVar40;" (assignment_expression "local_98._0_1_ = (byte)puVar40" (field_expression "local_98._0_1_" (identifier "local_98") (. ".") (field_identifier "_0_1_")) (= "=") (cast_expression "(byte)puVar40" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "puVar40"))) (; ";")) (expression_statement "lVar30 = *(long *)(param_4 + 0x20);" (assignment_expression "lVar30 = *(long *)(param_4 + 0x20)" (identifier "lVar30") (= "=") (pointer_expression "*(long *)(param_4 + 0x20)" (* "*") (cast_expression "(long *)(param_4 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_4 + 0x20)" (( "(") (binary_expression "param_4 + 0x20" (identifier "param_4") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (if_statement "if (lVar30 != 0) goto LAB_002c6206;" (if "if") (parenthesized_expression "(lVar30 != 0)" (( "(") (binary_expression "lVar30 != 0" (identifier "lVar30") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_002c6206;" (goto "goto") (statement_identifier "LAB_002c6206") (; ";"))) (expression_statement "FUN_00290a70();" (call_expression "FUN_00290a70()" (identifier "FUN_00290a70") (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_002c6490:\n  uVar17 = (uint)(byte)local_98;" (statement_identifier "LAB_002c6490") (: ":") (expression_statement "uVar17 = (uint)(byte)local_98;" (assignment_expression "uVar17 = (uint)(byte)local_98" (identifier "uVar17") (= "=") (cast_expression "(uint)(byte)local_98" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(byte)local_98" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_98")))) (; ";"))) (labeled_statement "LAB_002c64ab:\n  local_d0 = (uint *)&local_78;" (statement_identifier "LAB_002c64ab") (: ":") (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" (identifier "local_d0") (= "=") (cast_expression "(uint *)&local_78" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_78" (& "&") (identifier "local_78")))) (; ";"))) (expression_statement "local_68 = FUN_00298450();" (assignment_expression "local_68 = FUN_00298450()" (identifier "local_68") (= "=") (call_expression "FUN_00298450()" (identifier "FUN_00298450") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "bVar49 = uVar47 == 100;" (assignment_expression "bVar49 = uVar47 == 100" (identifier "bVar49") (= "=") (binary_expression "uVar47 == 100" (identifier "uVar47") (== "==") (number_literal "100"))) (; ";")) (expression_statement "puVar44 = (uint *)0x0;" (assignment_expression "puVar44 = (uint *)0x0" (identifier "puVar44") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if ((uVar36 & 0xf7) == 0x85) goto LAB_002c7a61;" (if "if") (parenthesized_expression "((uVar36 & 0xf7) == 0x85)" (( "(") (binary_expression "(uVar36 & 0xf7) == 0x85" (parenthesized_expression "(uVar36 & 0xf7)" (( "(") (binary_expression "uVar36 & 0xf7" (identifier "uVar36") (& "&") (number_literal "0xf7")) () ")")) (== "==") (number_literal "0x85")) () ")")) (goto_statement "goto LAB_002c7a61;" (goto "goto") (statement_identifier "LAB_002c7a61") (; ";"))) (expression_statement "local_e1 = true;" (assignment_expression "local_e1 = true" (identifier "local_e1") (= "=") (true "true")) (; ";")) (expression_statement "bVar48 = bVar49;" (assignment_expression "bVar48 = bVar49" (identifier "bVar48") (= "=") (identifier "bVar49")) (; ";")) (labeled_statement "LAB_002c64da:\n  local_d0 = (uint *)&local_78;" (statement_identifier "LAB_002c64da") (: ":") (expression_statement "local_d0 = (uint *)&local_78;" (assignment_expression "local_d0 = (uint *)&local_78" (identifier "local_d0") (= "=") (cast_expression "(uint *)&local_78" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_78" (& "&") (identifier "local_78")))) (; ";"))) (expression_statement "puVar44 = (uint *)0x0;" (assignment_expression "puVar44 = (uint *)0x0" (identifier "puVar44") (= "=") (cast_expression "(uint *)0x0" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" (identifier "param_9") (= "=") (identifier "local_d0")) (; ";")) (goto_statement "goto LAB_002c4e43;" (goto "goto") (statement_identifier "LAB_002c4e43") (; ";")) (labeled_statement "LAB_002c7a61:\n  param_9 = local_d0;" (statement_identifier "LAB_002c7a61") (: ":") (expression_statement "param_9 = local_d0;" (assignment_expression "param_9 = local_d0" (identifier "param_9") (= "=") (identifier "local_d0")) (; ";"))) (expression_statement "local_e1 = true;" (assignment_expression "local_e1 = true" (identifier "local_e1") (= "=") (true "true")) (; ";")) (goto_statement "goto LAB_002c4e56;" (goto "goto") (statement_identifier "LAB_002c4e56") (; ";")) (} "}")))

/* WARNING: Type propagation algorithm not settling */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Enum "ELFOSABI": Some values do not have unique names */
/* DWARF original prototype: bool relocate(Relocate * this, Relocate_info<32,_true> * relinfo, uint
   rel_type, Target_mips<32,_true> * target, Output_section * output_section, size_t relnum, uchar *
   preloc, Sized_symbol<32> * gsym, Symbol_value<32> * psymval, uchar * view, Mips_address address,
   section_size_type param_11) */

bool __thiscall
anon_unknown.dwarf_ead2ad::Target_mips<32,_true>::Relocate::relocate
          (Relocate *this,Relocate_info<32,_true> *relinfo,uint rel_type,
          Target_mips<32,_true> *target,Output_section *output_section,size_t relnum,uchar *preloc,
          Sized_symbol<32> *gsym,Symbol_value<32> *psymval,uchar *view,Mips_address address,
          section_size_type param_11)

{
  uint64_t *puVar1;
  _Base_ptr *pp_Var2;
  _Rb_tree_header *p_Var3;
  byte bVar4;
  Mips_address address_00;
  Mips_address MVar5;
  Mips_relobj<32,_false> *this_00;
  Mips_output_data_mips_stubs<32,_true> *pMVar6;
  Mips_output_data_plt<32,_true> *pMVar7;
  Mips_output_data_la25_stub<32,_true> *pMVar8;
  uint64_t uVar9;
  undefined8 uVar10;
  ulong uVar11;
  _Bit_type *p_Var12;
  pointer pcVar13;
  _Rb_tree_color _Var14;
  _Alloc_hider _Var15;
  bool bVar16;
  byte bVar17;
  byte bVar18;
  ushort uVar19;
  Valtype x;
  Value VVar20;
  uint uVar21;
  uint uVar22;
  uint uVar23;
  Value VVar24;
  int iVar25;
  uint uVar26;
  Status SVar27;
  char *pcVar28;
  ulong uVar29;
  Mips_got_info<32,_true> *pMVar30;
  _List_node_base *p_Var31;
  Mips_relobj<32,_false> *pMVar32;
  _Base_ptr p_Var33;
  Sized_symbol<32> *pSVar34;
  Mips_relobj<32,_false> *pMVar35;
  _Base_ptr p_Var36;
  _Base_ptr p_Var37;
  ushort uVar38;
  Value_type VVar39;
  long lVar40;
  bool jal_shuffle;
  int extraout_EDX;
  uint uVar41;
  Mips_relobj<32,_false> *extraout_RDX;
  Mips_relobj<32,_false> *pMVar42;
  ulong uVar43;
  Symbol_value<32> *extraout_RDX_00;
  Symbol_value<32> *extraout_RDX_01;
  undefined7 uVar46;
  Symbol_value<32> *pSVar44;
  Mips_relobj<32,_true> *extraout_RDX_02;
  Mips_relobj<32,_true> *extraout_RDX_03;
  Mips_relobj<32,_true> *pMVar45;
  char cVar47;
  uint uVar48;
  uint uVar49;
  Relocate *pRVar50;
  Mips_output_data_got<32,_true> *pMVar51;
  Mips_address value;
  Mips_symbol<64> *sym;
  _List_node_base **object;
  byte *pbVar52;
  Mips_relobj<32,_false> *pMVar53;
  Target_mips<32,_true> *pTVar54;
  _Base_ptr p_Var55;
  size_t sVar56;
  undefined1 uVar57;
  uint *puVar58;
  ulong uVar59;
  uint uVar60;
  bool bVar61;
  bool bVar62;
  bool bVar63;
  bool bVar64;
  undefined1 in_stack_fffffffffffffeb8;
  Symbol *in_stack_fffffffffffffec0;
  undefined1 in_stack_fffffffffffffec8;
  uint in_stack_fffffffffffffed0;
  _List_node_base *in_stack_fffffffffffffed8;
  _List_node_base *in_stack_fffffffffffffee0;
  _List_node_base *in_stack_fffffffffffffee8;
  undefined4 uVar65;
  _List_node_base *local_108;
  uint local_f8;
  uint local_f4;
  byte local_ec;
  uint local_e8;
  byte local_e3;
  bool local_e2;
  bool local_e1;
  Mips_relobj<32,_false> *local_d0;
  uint local_c8;
  uint local_c4;
  ulong local_c0;
  uint local_b0;
  _List_node_base *local_98;
  uint r_types [3];
  Symbol_value<32> symval;
  string local_58;
  
  bVar18 = 0;
  uVar21 = *(uint *)(relinfo->reloc_shdr + 0x14);
  uVar60 = *(uint *)(relinfo->reloc_shdr + 0x24);
  uVar43 = (ulong)(uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 |
                  uVar21 << 0x18) /
           (ulong)(uVar60 >> 0x18 | (uVar60 & 0xff0000) >> 8 | (uVar60 & 0xff00) << 8 |
                  uVar60 << 0x18);
  uVar21 = *(uint *)preloc;
  uVar48 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
  uVar21 = *(uint *)(preloc + 4);
  uVar60 = uVar21 >> 0x18;
  uVar49 = uVar60 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
  _Var14 = uVar49 >> 8;
  if (rel_type == 4) {
    local_c4 = 0;
    uVar23 = *(uint *)(preloc + 8);
    local_b0 = 0xffffffff;
    local_c8 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;
    if (relnum + 1 < uVar43) {
      uVar23 = *(uint *)(preloc + 0xc);
      local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18
      ;
      local_c4 = *(uint *)(preloc + 0x10) >> 0x18;
    }
  }
  else if (relnum + 1 < uVar43) {
    local_c8 = 0;
    uVar23 = *(uint *)(preloc + 8);
    local_b0 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;
    local_c4 = *(uint *)(preloc + 0xc) >> 0x18;
  }
  else {
    local_c4 = 0;
    local_b0 = 0xffffffff;
    local_c8 = 0;
  }
  symval._8_4_ = 0x80000000;
  symval.u_.value = 0;
  this_00 = (Mips_relobj<32,_false> *)relinfo->object;
  symval.output_symtab_index_ = 0;
  symval.output_dynsym_index_ = 0xffffffff;
  if (gsym == (Sized_symbol<32> *)0x0) {
    object = (_List_node_base **)(ulong)_Var14;
    p_Var12 = (this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl.
              super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p;
    if ((Mips_relobj<32,_false> *)
        (((ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.
                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +
         ((long)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>.
                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -
         (long)p_Var12) * 8) -
        (ulong)(this_00->local_symbol_is_mips16_).super__Bvector_base<std::allocator<bool>_>._M_impl
               .super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_offset) <= object) {
                    /* WARNING: Subroutine does not return */
      gold::do_gold_unreachable("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");
    }
    local_ec = (byte)((uVar21 & 0xff0000) >> 0x10);
    uVar29 = 1L << (local_ec & 0x3f);
    uVar43 = p_Var12[uVar49 >> 0xe];
    p_Var12 = (this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.
              _M_impl.super__Bvector_impl_data._M_start.super__Bit_iterator_base._M_p;
    uVar59 = uVar29 & uVar43;
    puVar58 = (uint *)(ulong)(uVar59 != 0);
    sVar56 = (size_t)(this_00->local_symbol_is_micromips_).
                     super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                     _M_start.super__Bit_iterator_base._M_offset;
    if ((Mips_relobj<32,_false> *)
        (((ulong)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.
                 _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_offset +
         ((long)(this_00->local_symbol_is_micromips_).super__Bvector_base<std::allocator<bool>_>.
                _M_impl.super__Bvector_impl_data._M_finish.super__Bit_iterator_base._M_p -
         (long)p_Var12) * 8) - sVar56) <= object) {
LAB_002c821c:
                    /* WARNING: Subroutine does not return */
      gold::do_gold_unreachable("../../gold/mips.cc",0x668,"local_symbol_is_micromips");
    }
    uVar11 = p_Var12[uVar49 >> 0xe];
    uVar21 = (uint)((uVar29 & uVar11) != 0);
    local_e1 = ((uVar43 | uVar11) & uVar29) != 0;
    if (local_e1) {
      object = (_List_node_base **)this_00;
                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */
      symval.u_.value =
           gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,1);
      psymval = &symval;
    }
    if (uVar60 == 100) {
      p_Var55 = (((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.
                super__Rb_tree_header._M_header._M_parent;
      p_Var3 = &(((Mips16_stubs_int_map *)&this_00->local_mips16_call_stubs_)->_M_t)._M_impl.
                super__Rb_tree_header;
      if (p_Var55 != (_Base_ptr)0x0) {
        object = (_List_node_base **)(ulong)_Var14;
        p_Var37 = p_Var55;
        p_Var36 = &p_Var3->_M_header;
        do {
          if (p_Var37[1]._M_color < _Var14) {
            p_Var33 = p_Var37->_M_right;
          }
          else {
            p_Var33 = p_Var37->_M_left;
            p_Var36 = p_Var37;
          }
          p_Var37 = p_Var33;
        } while (p_Var33 != (_Base_ptr)0x0);
        if (((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) &&
           (p_Var36[1]._M_parent != (_Base_ptr)0x0)) {
          p_Var37 = &p_Var3->_M_header;
          if (uVar59 == 0) {
            do {
              p_Var36 = p_Var55;
              if (p_Var36[1]._M_color < _Var14) {
                p_Var55 = p_Var36->_M_right;
                p_Var36 = p_Var37;
              }
              else {
                p_Var55 = p_Var36->_M_left;
              }
              p_Var37 = p_Var36;
            } while (p_Var55 != (_Base_ptr)0x0);
            pMVar42 = (Mips_relobj<32,_false> *)0x0;
            if ((p_Var3 != (_Rb_tree_header *)p_Var36) && (p_Var36[1]._M_color <= _Var14)) {
              pMVar42 = (Mips_relobj<32,_false> *)p_Var36[1]._M_parent;
            }
            puVar58 = (uint *)0x0;
            local_f8 = 0;
            goto LAB_002c5870;
          }
          puVar58 = (uint *)0x1;
        }
      }
LAB_002c56d8:
      local_f8 = 0;
      goto LAB_002c56df;
    }
    p_Var3 = &(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.
              super__Rb_tree_header;
    p_Var55 = (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.
              super__Rb_tree_header._M_header._M_parent;
    if (p_Var55 == (_Base_ptr)0x0) goto LAB_002c56d8;
    object = (_List_node_base **)(ulong)_Var14;
    p_Var37 = &p_Var3->_M_header;
    do {
      while (p_Var36 = p_Var55, p_Var36[1]._M_color < _Var14) {
        pp_Var2 = &p_Var36->_M_right;
        p_Var55 = *pp_Var2;
        p_Var36 = p_Var37;
        if (*pp_Var2 == (_Base_ptr)0x0) goto LAB_002c66ba;
      }
      p_Var55 = p_Var36->_M_left;
      p_Var37 = p_Var36;
    } while (p_Var36->_M_left != (_Base_ptr)0x0);
LAB_002c66ba:
    if (((p_Var3 == (_Rb_tree_header *)p_Var36) || (_Var14 < p_Var36[1]._M_color)) ||
       (local_f8 = 0, p_Var36[1]._M_parent == (_Base_ptr)0x0)) goto LAB_002c56d8;
LAB_002c509e:
    local_98._0_1_ = (byte)uVar21;
    local_d0 = (Mips_relobj<32,_false> *)&symval;
    uVar23 = relinfo->data_shndx;
    object = (_List_node_base **)(ulong)uVar23;
    pMVar53 = this_00;
    bVar61 = Mips_relobj<32,_true>::is_mips16_stub_section((Mips_relobj<32,_true> *)this_00,uVar23);
    if ((!bVar61) && (uVar23 != this_00->pdr_shndx_)) {
      if (gsym == (Sized_symbol<32> *)0x0) {
        pMVar53 = (Mips_relobj<32,_false> *)
                  (((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.
                  super__Rb_tree_header._M_header._M_parent;
        pMVar42 = (Mips_relobj<32,_false> *)
                  &(((Mips16_stubs_int_map *)&this_00->local_mips16_fn_stubs_)->_M_t)._M_impl.
                   super__Rb_tree_header;
        pMVar35 = pMVar42;
        if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c64ab;
        do {
          pMVar32 = pMVar53;
          if (*(_Rb_tree_color *)
               ((long)&(((Sized_relobj<32,_true> *)
                        &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>
                        )->super_Relobj).super_Object.name_.field_2 + 8) < _Var14) {
            pMVar53 = (Mips_relobj<32,_false> *)
                      (((Sized_relobj<32,_true> *)
                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)
                      ->super_Relobj).super_Object.name_.field_2._M_allocated_capacity;
            pMVar32 = pMVar35;
          }
          else {
            pMVar53 = (Mips_relobj<32,_false> *)
                      (((Sized_relobj<32,_true> *)
                       &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)
                      ->super_Relobj).super_Object.name_._M_string_length;
          }
          pMVar35 = pMVar32;
          if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c6490;
        } while( true );
      }
      if (*(char *)&gsym[1].super_Symbol.name_ == '\0') {
                    /* WARNING: Subroutine does not return */
        gold::do_gold_unreachable("../../gold/mips.cc",0x2d5f,"relocate");
      }
      iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);
      if (iVar25 == -1) {
        pMVar53 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_;
        goto LAB_002c64ab;
      }
      pMVar8 = target->la25_stub_;
      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {
        bVar18 = (pMVar8->super_Output_section_data).super_Output_data.field_0x20;
        uVar49 = bVar18 & 1;
        object = (_List_node_base **)(ulong)uVar49;
        local_e1 = SUB41(uVar49,0);
        if ((bVar18 & 1) != 0) {
          bVar62 = uVar60 == 100;
          symval.u_.value =
               iVar25 + (int)(pMVar8->super_Output_section_data).super_Output_data.address_;
          bVar18 = 0;
          bVar61 = bVar62;
          if ((uVar60 & 0xf7) != 0x85) goto LAB_002c64da;
          psymval = (Symbol_value<32> *)local_d0;
          goto LAB_002c5150;
        }
                    /* WARNING: Subroutine does not return */
        Mips_output_data_plt<64,_false>::mips_entry_address
                  ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);
      }
      la25_stub_section((Target_mips<32,_true> *)pMVar53);
      pMVar45 = extraout_RDX_03;
      goto LAB_002c82c4;
    }
    if (gsym == (Sized_symbol<32> *)0x0) {
LAB_002c56df:
      bVar61 = uVar60 == 100;
      goto LAB_002c4e20;
    }
  }
  else {
    bVar17 = (byte)(gsym->super_Symbol).field_0x39 >> 2;
    bVar61 = (bVar17 & 0x3c) == 0x3c;
    puVar58 = (uint *)(ulong)bVar61;
    bVar62 = (bVar17 & 0x30) == 0x20;
    uVar21 = (uint)bVar62;
    local_e1 = bVar62 || bVar61;
    sVar56 = relnum;
    if ((bVar62 || bVar61) &&
       (VVar20 = gold::Symbol_value<32>::value<true>
                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0), VVar20 != 0)) {
      VVar20 = gold::Symbol_value<32>::value<true>(psymval,(Sized_relobj_file<32,_true> *)this_00,0)
      ;
      symval.u_.value = VVar20 | 1;
      psymval = &symval;
    }
    else {
      local_e1 = false;
    }
    local_d0 = (Mips_relobj<32,_false> *)&symval;
    sym = (Mips_symbol<64> *)0x0;
    if (uVar60 - 1 < 0xf9) {
      sym = (Mips_symbol<64> *)(ulong)(uint)(int)(char)CSWTCH_4890[uVar60 - 1];
    }
    pMVar53 = (Mips_relobj<32,_false> *)gsym;
                    /* try { // try from 002c4c4a to 002c54e2 has its CatchHandler @ 002c83b5 */
    bVar61 = gold::Symbol::use_plt_offset(&gsym->super_Symbol,(int)sym);
    cVar47 = *(char *)((long)&gsym[1].super_Symbol.symtab_index_ + 1);
    if (bVar61) {
      if (cVar47 != '\0') goto LAB_002c4c60;
      uVar21 = gsym[1].super_Symbol.dynsym_index_;
      pMVar7 = target->plt_;
      if (uVar21 == 0xffffffff) {
        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {
LAB_002c8217:
          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);
          goto LAB_002c821c;
        }
        uVar21 = gsym[1].super_Symbol.plt_offset_;
        if (uVar21 == 0xffffffff) {
                    /* WARNING: Subroutine does not return */
          gold::do_gold_unreachable("../../gold/mips.cc",0x9ed,"comp_entry_address");
        }
        if ((pMVar7->field_0x20 & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          Mips_output_data_plt<64,_false>::mips_entry_address
                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);
        }
        bVar17 = target->field_0x14;
        VVar20 = uVar21 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +
                 pMVar7->plt0_entry_o32[2];
        if (bVar17 == 0) {
                    /* WARNING: Subroutine does not return */
          is_output_micromips((Target_mips<32,_true> *)pMVar53);
        }
        bVar61 = false;
        bVar63 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;
        if (bVar63) {
          puVar58 = (uint *)(ulong)bVar17;
          bVar17 = bVar62;
        }
        uVar21 = (uint)bVar17;
      }
      else {
        if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) goto LAB_002c81eb;
        if ((pMVar7->field_0x20 & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          Mips_output_data_plt<64,_false>::mips_entry_address
                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);
        }
        uVar21 = uVar21 + pMVar7->plt0_entry_o32[2];
        puVar58 = (uint *)0x0;
        bVar61 = CARRY4(uVar21,pMVar7->plt_header_size_);
        VVar20 = uVar21 + pMVar7->plt_header_size_;
        bVar63 = VVar20 == 0;
        uVar21 = 0;
      }
LAB_002c4c88:
      symval.u_.value = VVar20;
      psymval = (Symbol_value<32> *)local_d0;
    }
    else {
      bVar61 = false;
      bVar63 = cVar47 == '\0';
      if (!bVar63) {
LAB_002c4c60:
        pMVar6 = target->mips_stubs_;
        if (pMVar6 == (Mips_output_data_mips_stubs<32,_true> *)0x0) {
          mips_stubs_section((Target_mips<32,_true> *)pMVar53);
LAB_002c81eb:
          Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);
LAB_002c81f0:
          Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c81f5:
                    /* WARNING: Subroutine does not return */
          gold::do_gold_unreachable("../../gold/mips.cc",0x2e88,"relocate");
        }
        if (((pMVar6->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          Mips_output_data_plt<64,_false>::mips_entry_address
                    ((Mips_output_data_plt<64,_false> *)pMVar53,sym);
        }
        uVar23 = *(uint *)((long)&gsym[1].super_Symbol.version_ + 4);
        puVar1 = &(pMVar6->super_Output_section_data).super_Output_data.address_;
        bVar61 = CARRY4(uVar23,(uint)*puVar1);
        VVar20 = uVar23 + (int)*puVar1;
        bVar63 = VVar20 == 0;
        goto LAB_002c4c88;
      }
    }
    pMVar42 = (Mips_relobj<32,_false> *)(gsym->super_Symbol).name_;
    lVar40 = 9;
    pMVar53 = pMVar42;
    pbVar52 = (byte *)"_gp_disp";
    do {
      if (lVar40 == 0) break;
      lVar40 = lVar40 + -1;
      bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)
                          &(pMVar53->super_Sized_relobj_file<32,_false>).
                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;
      bVar61 = bVar17 < *pbVar52;
      bVar63 = bVar17 == *pbVar52;
      pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar53 + (ulong)bVar18 * -2 + 1);
      pbVar52 = pbVar52 + (ulong)bVar18 * -2 + 1;
    } while (bVar63);
    lVar40 = 0xf;
    bVar62 = !bVar61 && !bVar63;
    bVar63 = bVar62 < bVar61;
    bVar64 = bVar62 == bVar61;
    pMVar35 = (Mips_relobj<32,_false> *)"__gnu_local_gp";
    do {
      object = (_List_node_base **)pMVar42;
      pMVar53 = pMVar35;
      if (lVar40 == 0) break;
      lVar40 = lVar40 + -1;
      pMVar53 = (Mips_relobj<32,_false> *)((long)pMVar35 + (ulong)bVar18 * -2 + 1);
      object = (_List_node_base **)((long)pMVar42 + (ulong)bVar18 * -2 + 1);
      bVar4 = *(byte *)&(((Sized_relobj<32,_true> *)
                         &(pMVar35->super_Sized_relobj_file<32,_false>).
                          super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;
      bVar17 = *(byte *)&(((Sized_relobj<32,_true> *)
                          &(pMVar42->super_Sized_relobj_file<32,_false>).
                           super_Sized_relobj<32,_false>)->super_Relobj).super_Object._vptr_Object;
      bVar63 = bVar17 < bVar4;
      bVar64 = bVar17 == bVar4;
      pMVar42 = (Mips_relobj<32,_false> *)object;
      pMVar35 = pMVar53;
    } while (bVar64);
    if (bVar62 == bVar61) {
      object = (_List_node_base **)(ulong)(byte)this_00->field_0x36c;
      bVar18 = (byte)this_00->field_0x36c >> 1 & 1 ^ 1;
      if ((!bVar63 && !bVar64) == bVar63) {
        if (bVar18 == 0) goto LAB_002c51e0;
      }
      else if (bVar18 == 0) goto LAB_002c5078;
      if (((1 < uVar60 - 0x68) && (1 < uVar60 - 5)) && ((1 < uVar60 - 0x86 && (1 < uVar60 - 0x40))))
      {
        pcVar28 = (char *)gettext(
                                 "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."
                                 );
        object = (_List_node_base **)relnum;
        pMVar53 = (Mips_relobj<32,_false> *)relinfo;
        gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);
      }
      local_f8 = 1;
    }
    else {
      if ((!bVar63 && !bVar64) == bVar63) {
LAB_002c51e0:
        if (target->gp_ == (Sized_symbol<32> *)0x0) {
          symval.u_.value = 0;
          object = (_List_node_base **)target;
        }
        else {
          symval.u_.value = target->gp_->value_;
          object = (_List_node_base **)target;
          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&
              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&
             (object = (_List_node_base **)this_00,
             (Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {
            symval.u_.value =
                 symval.u_.value + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;
          }
        }
        psymval = (Symbol_value<32> *)local_d0;
      }
LAB_002c5078:
      local_f8 = 0;
    }
    if (uVar60 == 100) {
      pMVar53 = (Mips_relobj<32,_false> *)gsym[1].super_Symbol.got_offsets_.got_next_;
      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {
        if (*(long *)&gsym[1].super_Symbol.field_0x38 == 0) goto LAB_002c4d83;
        if ((gsym->super_Symbol).plt_offset_ == 0xffffffff) goto LAB_002c82c9;
        goto LAB_002c5869;
      }
      if (((gsym->super_Symbol).plt_offset_ == 0xffffffff) && ((char)puVar58 != '\0'))
      goto LAB_002c4d83;
      pMVar35 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;
      pMVar42 = pMVar53;
      if (pMVar35 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c5870;
      uVar23 = (((Sized_relobj<32,_true> *)
                &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
               super_Relobj).super_Object.shnum_;
      if (uVar23 < 2) goto LAB_002c5870;
      p_Var12 = (this_00->section_is_mips16_call_fp_stub_).
                super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data._M_start
                .super__Bit_iterator_base._M_p;
      uVar43 = ((ulong)(this_00->section_is_mips16_call_fp_stub_).
                       super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                       _M_finish.super__Bit_iterator_base._M_offset +
               ((long)(this_00->section_is_mips16_call_fp_stub_).
                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                      _M_finish.super__Bit_iterator_base._M_p - (long)p_Var12) * 8) -
               (ulong)(this_00->section_is_mips16_call_fp_stub_).
                      super__Bvector_base<std::allocator<bool>_>._M_impl.super__Bvector_impl_data.
                      _M_start.super__Bit_iterator_base._M_offset;
      if (1 < uVar43) {
        sVar56 = 1;
        uVar29 = 1;
        do {
          pMVar42 = pMVar35;
          if ((p_Var12[uVar29 >> 6] & 1L << ((byte)uVar29 & 0x3f)) != 0) goto LAB_002c5870;
          pMVar42 = pMVar53;
          if (uVar29 == (ulong)(uVar23 - 2) + 1) goto LAB_002c5870;
          uVar29 = uVar29 + 1;
        } while (uVar29 != uVar43);
      }
LAB_002c81a7:
                    /* WARNING: Subroutine does not return */
      gold::do_gold_unreachable("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");
    }
    lVar40._0_4_ = gsym[1].super_Symbol.got_offsets_.got_type_;
    lVar40._4_4_ = gsym[1].super_Symbol.got_offsets_.got_offset_;
    if (lVar40 != 0) {
      if ((uVar60 == 0x67) && (*(char *)&gsym[1].super_Symbol.name_ == '\0')) {
        iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);
        if (iVar25 == -1) {
          bVar61 = false;
          goto LAB_002c4e31;
        }
        goto LAB_002c5256;
      }
      goto LAB_002c509e;
    }
  }
  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);
  if (iVar25 == -1) goto LAB_002c52f0;
LAB_002c5256:
  local_d0 = (Mips_relobj<32,_false> *)&symval;
  if ((this_00->field_0x36c & 1) == 0) {
    object = (_List_node_base **)((ulong)puVar58 & 0xff);
    pMVar53 = (Mips_relobj<32,_false> *)(ulong)uVar60;
    bVar61 = relocation_needs_la25_stub<32,_true>
                       ((Mips_relobj<32,_true> *)pMVar53,(uint)object,SUB41(iVar25,0));
    if (bVar61) {
      pMVar8 = target->la25_stub_;
      if (pMVar8 != (Mips_output_data_la25_stub<32,_true> *)0x0) {
        if (((pMVar8->super_Output_section_data).super_Output_data.field_0x20 & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          Mips_output_data_plt<64,_false>::mips_entry_address
                    ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)object);
        }
        local_98._0_1_ = (byte)uVar21;
        bVar61 = uVar60 == 100;
        symval.u_.value =
             extraout_EDX + (int)(pMVar8->super_Output_section_data).super_Output_data.address_ +
             (uint)(((byte)(gsym->super_Symbol).field_0x39 >> 2 & 0x30) == 0x20);
        bVar62 = (bool)((byte)local_98 & bVar61);
        psymval = (Symbol_value<32> *)local_d0;
        object = (_List_node_base **)local_d0;
        goto joined_r0x002c52d3;
      }
      la25_stub_section((Target_mips<32,_true> *)pMVar53);
      goto LAB_002c8217;
    }
  }
LAB_002c52f0:
  bVar61 = uVar60 == 100;
  if (uVar60 != 0x85 && !bVar61) {
    bVar61 = false;
    bVar62 = false;
    if ((uVar49 & 0xf7) != 0x85) goto LAB_002c4e43;
    goto LAB_002c5320;
  }
LAB_002c4d98:
  local_d0 = (Mips_relobj<32,_false> *)&symval;
  if ((((gsym->super_Symbol).plt_offset_ != 0xffffffff) &&
      (uVar23 = gsym[1].super_Symbol.plt_offset_, uVar23 != 0xffffffff)) &&
     (gsym[1].super_Symbol.dynsym_index_ != 0xffffffff)) {
    pMVar7 = target->plt_;
    if (pMVar7 == (Mips_output_data_plt<32,_true> *)0x0) {
LAB_002c833d:
      Target_mips<32,_true>::plt_section((Target_mips<32,_true> *)pMVar53);
LAB_002c8342:
      gold::Symbol::dynsym_index((Symbol *)pMVar53);
LAB_002c8347:
                    /* WARNING: Subroutine does not return */
      gold::do_gold_unreachable("../../gold/mips.cc",0x895,"get_primary_got_offset");
    }
    if ((pMVar7->field_0x20 & 1) == 0) {
                    /* WARNING: Subroutine does not return */
      Mips_output_data_plt<64,_false>::mips_entry_address
                ((Mips_output_data_plt<64,_false> *)pMVar53,(Mips_symbol<64> *)target);
    }
    symval.u_.value =
         uVar23 + 1 + pMVar7->plt_header_size_ + pMVar7->plt_mips_offset_ +
         pMVar7->plt0_entry_o32[2];
    if (target->field_0x14 == '\0') {
LAB_002c83ab:
                    /* WARNING: Subroutine does not return */
      is_output_micromips((Target_mips<32,_true> *)pMVar53);
    }
    bVar62 = (*(uint *)&target->field_0x10 & 0x2000000) == 0;
    psymval = (Symbol_value<32> *)local_d0;
    puVar58 = (uint *)(ulong)bVar62;
    uVar21 = (uint)!bVar62;
    object = (_List_node_base **)target;
  }
LAB_002c4e20:
  local_98._0_1_ = (byte)uVar21;
  bVar62 = (bool)((byte)local_98 & bVar61);
joined_r0x002c52d3:
  if (bVar62 != false) {
    uVar21 = (uint)bVar62;
    goto LAB_002c532c;
  }
LAB_002c4e31:
  bVar62 = bVar61;
  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c5320;
LAB_002c4e43:
  bVar62 = bVar61;
  if (uVar60 - 0x8b < 2) {
LAB_002c5320:
    if ((char)puVar58 != '\0') {
LAB_002c532c:
      pcVar28 = (char *)gettext("MIPS16 and microMIPS functions cannot call each other");
      gold::gold_error(pcVar28);
    }
  }
LAB_002c4e56:
  local_98._0_1_ = (byte)uVar21;
  bVar18 = (byte)puVar58;
  if (gsym == (Sized_symbol<32> *)0x0) {
    local_e3 = (bVar18 ^ 1) & bVar62;
    local_e2 = (bool)local_e3;
    if ((bool)local_e3 != false) goto LAB_002c4e81;
    local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85;
    if ((bool)local_e3 == false) {
LAB_002c5694:
      local_e3 = (byte)local_98 | bVar18;
      if (uVar60 != 4 && uVar60 != 0x25) {
        local_e3 = uVar60 == 4 || uVar60 == 0x25;
      }
      if (gsym != (Sized_symbol<32> *)0x0) goto LAB_002c5175;
      local_e2 = true;
      goto LAB_002c4e81;
    }
    r_types[0] = 0x85;
    r_types[1] = 0;
    r_types[2] = 0;
    local_f4 = 0x21;
    local_e2 = (bool)local_e3;
LAB_002c581a:
    if (1 < r_types[0] - 0x8b) {
      uVar21 = (uint)(ushort)(*(ushort *)view << 8 | *(ushort *)view >> 8);
      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;
LAB_002c4ee9:
      uVar21 = uVar21 << 0x10 | (uint)uVar38;
LAB_002c4ef1:
      *(uint *)view =
           uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
    }
  }
  else {
LAB_002c5150:
    bVar61 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol);
    if (bVar61) {
      local_e3 = 0;
    }
    else {
      local_e3 = (bVar18 ^ 1) & bVar62;
      if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar60 == 0x85, local_e3 == 0))
      goto LAB_002c5694;
    }
LAB_002c5175:
    uVar21 = (gsym->super_Symbol).dynsym_index_;
    sVar56 = (size_t)uVar21;
    bVar61 = uVar21 != 0;
    object = (_List_node_base **)(ulong)bVar61;
    if ((char)gsym[1].super_Symbol.symtab_index_ != '\0') {
      local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,true);
      if ((!local_e2) && (local_e2 = uVar60 == 0x92 || uVar60 == 0x14, local_e2)) goto LAB_002c5579;
LAB_002c4e81:
      local_f4 = uVar60 - 100;
      uVar43 = (ulong)(uVar60 - 0x85);
      r_types[1] = 0;
      r_types[2] = 0;
      if (0xc < local_f4) goto LAB_002c55ef;
      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;
      uVar21 = (uint)uVar19;
      uVar38 = *(ushort *)(view + 2) << 8 | *(ushort *)(view + 2) >> 8;
      r_types[0] = uVar60;
      if (uVar60 - 0x85 < 0x29) {
        object = (_List_node_base **)0x1b3e1fff3ff;
        if ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) == 0) goto LAB_002c5704;
        goto LAB_002c4ee9;
      }
      if (uVar60 == 100) {
        local_f4 = 0;
        goto LAB_002c4ee9;
      }
LAB_002c5704:
      object = (_List_node_base **)(((ulong)uVar19 & 0x1f) << 0xb);
      uVar21 = (uint)(uVar19 & 0x7e0) | uVar38 & 0x1f |
               (uVar19 & 0xf800) << 0x10 | (uVar38 & 0xffe0) << 0xb | (uint)object;
      goto LAB_002c4ef1;
    }
                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */
    local_e2 = symbol_refs_local(&gsym->super_Symbol,bVar61,false);
    if ((local_e2) ||
       (local_e2 = uVar60 == 0x14 || uVar60 == 0x92, uVar60 != 0x14 && uVar60 != 0x92))
    goto LAB_002c4e81;
LAB_002c5579:
    if (uVar60 - 0x85 < 0x29) {
      uVar29 = 1L << ((byte)(uVar60 - 0x85) & 0x3f) & 0x1b3e1fff3ff;
      uVar43 = (ulong)((-(uint)(uVar29 == 0) & 0xffffff82) + 0xc);
      local_f4 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x2d;
      uVar60 = (-(uint)(uVar29 == 0) & 0xffffff82) + 0x91;
    }
    else {
      uVar43 = 0xffffff8e;
      uVar60 = 0x13;
      local_f4 = 0xffffffaf;
    }
    r_types[1] = 0;
    r_types[2] = 0;
    local_e2 = false;
LAB_002c55ef:
    r_types[0] = uVar60;
    if (((uint)uVar43 < 0x29) && ((0x1b3e1fff3ffU >> (uVar43 & 0x3f) & 1) != 0)) goto LAB_002c581a;
  }
  uVar60 = r_types[0];
  bVar61 = rel_type == 9;
  r_types[1] = 0;
  r_types[2] = 0;
  puVar58 = r_types;
  SVar27 = STATUS_OKAY;
  local_e8 = 0;
  uVar21 = r_types[0];
LAB_002c4f1d:
  uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);
  iVar25 = (int)object;
  if (uVar21 == 0) goto LAB_002c5380;
  pTVar54 = (Target_mips<32,_true> *)(ulong)local_c4;
  bVar62 = local_b0 == uVar48;
  bVar63 = local_c4 != 0;
  cVar47 = bVar62 && bVar63;
  uVar49 = (uint)(byte)cVar47;
  if (this->calculate_only_ == false) {
    this->calculate_only_ = (bool)cVar47;
    switch(uVar21) {
    default:
      goto switchD_002c5379_caseD_0;
    case 1:
      local_c0._0_4_ = local_c8;
      uVar19 = *(ushort *)view << 8 | *(ushort *)view >> 8;
      if (bVar61 != false) {
        local_c0._0_4_ = (uint)uVar19;
        if ((short)uVar19 < 0) {
          local_c0._0_4_ = uVar19 - 0x10000;
        }
      }
      goto LAB_002c70ec;
    case 2:
      goto switchD_002c5379_caseD_2;
    case 3:
      goto switchD_002c4f87_caseD_3;
    case 4:
    case 100:
    case 0x85:
      bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);
      local_c0 = (ulong)local_c8;
      uVar49 = *(uint *)view;
      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8;
      uVar26 = uVar23 | uVar49 << 0x18;
      if (bVar61 == false) {
LAB_002c7644:
        bVar16 = bVar61;
        if (bVar64 == false) {
LAB_002c764c:
          uVar57 = SUB81(pTVar54,0);
          bVar64 = gsym == (Sized_symbol<32> *)0x0;
          if ((local_e3 == 1) || (uVar21 != 0x85)) goto LAB_002c73c9;
          if (bVar64) {
            in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);
            uVar49 = 0xf8000000;
            goto LAB_002c73e1;
          }
          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,1);
          uVar49 = (uint)local_c0 & 0x7ffffff;
          if ((local_c0 & 0x4000000) != 0) {
            uVar49 = ((uint)local_c0 & 0x7ffffff) + 0xf8000000;
          }
          goto LAB_002c73f5;
        }
LAB_002c7cf3:
        bVar61 = bVar16;
        object = (_List_node_base **)this_00;
        VVar20 = gold::Symbol_value<32>::value<true>
                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);
        uVar65 = (undefined4)((ulong)in_stack_fffffffffffffee8 >> 0x20);
        if ((VVar20 & 3) == (uint)(uVar21 == 4)) goto LAB_002c764c;
        pcVar28 = (char *)gettext("JALX to a non-word-aligned address");
        gold::gold_warning(pcVar28);
LAB_002c7d32:
        SVar27 = STATUS_BAD_RELOC;
      }
      else {
        if (uVar21 == 0x85) {
          local_c0 = (ulong)(uVar26 * 2) & 0xffffffff07fffffe;
          goto LAB_002c7644;
        }
        local_c0 = (ulong)((uVar23 | uVar49 << 0x18 & 0x3ffffff) << 2);
        bVar16 = bVar64;
        if (bVar64 != false) goto LAB_002c7cf3;
LAB_002c73c9:
        uVar57 = SUB81(pTVar54,0);
        bVar64 = gsym == (Sized_symbol<32> *)0x0;
        if (bVar64) {
          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);
          uVar49 = 0xf0000000;
LAB_002c73e1:
          bVar64 = true;
          uVar49 = address + 4 & uVar49 | (uint)local_c0;
        }
        else {
          in_stack_fffffffffffffee8 = (_List_node_base *)CONCAT44(uVar65,2);
          uVar49 = (uint)local_c0 & 0xfffffff;
          if ((local_c0 & 0x8000000) != 0) {
            uVar49 = ((uint)local_c0 & 0xfffffff) + 0xf0000000;
          }
        }
LAB_002c73f5:
        object = (_List_node_base **)this_00;
        pSVar34 = (Sized_symbol<32> *)psymval;
        VVar20 = gold::Symbol_value<32>::value<true>
                           (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);
        uVar49 = VVar20 >> ((byte)in_stack_fffffffffffffee8 & 0x1f);
        pSVar44 = extraout_RDX_00;
        if (((!bVar64) && (!bVar62 || !bVar63)) &&
           ((pSVar34 = gsym, bVar64 = gold::Symbol::is_weak_undefined(&gsym->super_Symbol),
            pSVar44 = extraout_RDX_01, !bVar64 &&
            (uVar23 = uVar49 >> 0x1a, pSVar44 = (Symbol_value<32> *)(ulong)uVar23,
            uVar23 != address + 4 >> ((char)in_stack_fffffffffffffee8 + 0x1aU & 0x1f))))) {
LAB_002c7359:
          SVar27 = STATUS_OVERFLOW;
          goto LAB_002c5940;
        }
        uVar23 = uVar26 ^ (uVar49 ^ uVar26) & 0x3ffffff;
        object = (_List_node_base **)(ulong)uVar23;
        if (local_e3 != 0) {
          uVar26 = uVar26 >> 0x1a;
          uVar46 = (undefined7)((ulong)pSVar44 >> 8);
          if (uVar21 == 100) {
            iVar25 = 7;
            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 6 < 2);
          }
          else if (uVar21 == 0x85) {
            iVar25 = 0x3c;
            pSVar44 = (Symbol_value<32> *)CONCAT71(uVar46,uVar26 - 0x3c < 2);
          }
          else {
            pSVar44 = (Symbol_value<32> *)
                      (ulong)((uint)CONCAT71(uVar46,uVar26 == 3) | (uint)(uVar26 == 0x1d));
            iVar25 = 0x1d;
          }
          if (((char)pSVar44 == '\0') && (!bVar62 || !bVar63)) {
            pcVar28 = (char *)gettext(
                                     "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."
                                     );
            gold::gold_error(pcVar28);
            goto LAB_002c7d32;
          }
          uVar23 = uVar23 & 0x3ffffff | iVar25 << 0x1a;
        }
        if (gold::parameters->options_ == (General_options *)0x0) {
                    /* WARNING: Subroutine does not return */
          Mips_relocate_functions<32,_false>::rel26
                    ((uchar *)pSVar34,(Mips_relobj<32,_false> *)object,pSVar44,uVar23,(bool)uVar57,
                     (Mips_address)sVar56,(bool)in_stack_fffffffffffffeb8,in_stack_fffffffffffffec0,
                     (bool)in_stack_fffffffffffffec8,in_stack_fffffffffffffed0,
                     SUB81(in_stack_fffffffffffffed8,0),SUB81(in_stack_fffffffffffffee0,0),
                     (Valtype *)in_stack_fffffffffffffee8);
        }
        if (!bVar62 || !bVar63) goto LAB_002c5ccb;
        SVar27 = STATUS_OKAY;
        this->calculated_value_ = uVar23;
      }
      goto LAB_002c5940;
    case 5:
    case 0x68:
    case 0x86:
      goto switchD_002c5379_caseD_5;
    case 6:
    case 0x69:
    case 0x87:
    case 0x9d:
      local_c0 = (ulong)local_c8;
      in_stack_fffffffffffffed0 = *(uint *)view;
      uVar23 = (in_stack_fffffffffffffed0 & 0xff0000) >> 8;
      uVar49 = in_stack_fffffffffffffed0 >> 0x18 | uVar23;
      in_stack_fffffffffffffee0 = (_List_node_base *)(ulong)uVar49;
      if (bVar61 != false) {
        object = (_List_node_base **)(ulong)uVar49;
        uVar26 = uVar49 - 0x10000;
        if ((uVar23 & 0x8000) == 0) {
          uVar26 = uVar49;
        }
        local_c0 = (ulong)uVar26;
      }
      goto LAB_002c7171;
    case 7:
    case 8:
    case 0x65:
    case 0x88:
    case 0x89:
    case 0xac:
      local_c0._0_4_ = local_c8;
      pSVar34 = target->gp_;
      if (pSVar34 != (Sized_symbol<32> *)0x0) goto LAB_002c7253;
      VVar39 = 0;
LAB_002c7297:
      uVar49 = *(uint *)view;
      uVar26 = (uVar49 & 0xff0000) >> 8;
      uVar23 = uVar49 >> 0x18 | uVar26;
      uVar49 = uVar23 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;
      local_c8 = (uint)local_c0;
      if (bVar61 != false) {
        if (uVar21 == 0xac) {
          local_c0._0_4_ = uVar49 * 4 & 0x1fc;
        }
        else {
          local_c0._0_4_ = uVar23 - 0x10000;
          if ((uVar26 & 0x8000) == 0) {
            local_c0._0_4_ = uVar23;
          }
        }
      }
      goto LAB_002c72d4;
    case 9:
    case 0x66:
    case 0x8a:
      goto switchD_002c5379_caseD_9;
    case 10:
      goto LAB_002c6a55;
    case 0xb:
    case 0x67:
    case 0x8e:
      goto switchD_002c5379_caseD_b;
    case 0xc:
      goto switchD_002c5379_caseD_c;
    case 0x12:
      goto switchD_002c5379_caseD_12;
    case 0x13:
    case 0x91:
    case 0xf9:
      goto switchD_002c5379_caseD_13;
    case 0x14:
    case 0x92:
      goto switchD_002c5379_caseD_14;
    case 0x15:
    case 0x93:
      goto switchD_002c5379_caseD_15;
    case 0x16:
    case 0x1e:
    case 0x94:
    case 0x99:
      goto switchD_002c5379_caseD_16;
    case 0x17:
    case 0x1f:
    case 0x95:
    case 0x9a:
      goto switchD_002c5379_caseD_17;
    case 0x18:
    case 0x96:
      local_c0._0_4_ = local_c8;
      if (bVar61 != false) {
        uVar10 = *(undefined8 *)view;
        local_c0._0_4_ =
             (uint)(byte)((ulong)uVar10 >> 0x38) | ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |
             (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;
      }
      goto LAB_002c6b1a;
    case 0x1c:
    case 0x97:
      goto LAB_002c59bd;
    case 0x1d:
    case 0x98:
      goto LAB_002c6b55;
    case 0x25:
    case 0x9c:
      goto switchD_002c5379_caseD_25;
    case 0x27:
    case 0x29:
      goto switchD_002c5379_caseD_27;
    case 0x2a:
    case 0x6a:
    case 0xa2:
      goto switchD_002c5379_caseD_2a;
    case 0x2b:
    case 0x6b:
    case 0xa3:
      goto switchD_002c5379_caseD_2b;
    case 0x2c:
    case 0x6c:
    case 0xa4:
      goto switchD_002c5379_caseD_2c;
    case 0x2d:
    case 0x6d:
    case 0xa5:
      goto switchD_002c5379_caseD_2d;
    case 0x2e:
    case 0x6e:
    case 0xa6:
      goto switchD_002c5379_caseD_2e;
    case 0x2f:
    case 0x30:
      goto switchD_002c5379_caseD_2f;
    case 0x31:
    case 0x6f:
    case 0xa9:
      goto switchD_002c5379_caseD_31;
    case 0x32:
    case 0x70:
    case 0xaa:
      goto switchD_002c5379_caseD_32;
    case 0x3c:
      goto LAB_002c6f06;
    case 0x3d:
      goto LAB_002c6fd2;
    case 0x3e:
      goto LAB_002c6d53;
    case 0x3f:
      goto LAB_002c6e24;
    case 0x40:
      goto switchD_002c5379_caseD_40;
    case 0x41:
      goto LAB_002c6ccf;
    case 0x8b:
      goto LAB_002c6bb8;
    case 0x8c:
      goto LAB_002c6c3e;
    case 0x8d:
      goto LAB_002c69c5;
    case 0xf8:
      if (bVar61 != false) {
        uVar21 = *(uint *)view;
        local_c0._0_4_ =
             uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
        goto LAB_002c6ed9;
      }
LAB_002c8390:
      local_c0._0_4_ = local_c8;
      goto LAB_002c6ed9;
    }
  }
  local_c8 = this->calculated_value_;
  object = (_List_node_base **)(ulong)local_c8;
  this->calculate_only_ = (bool)cVar47;
  local_c0 = (ulong)local_c8;
  local_c0._0_4_ = local_c8;
  switch(uVar21) {
  default:
    bVar61 = false;
switchD_002c5379_caseD_0:
    pcVar28 = (char *)gettext("unsupported reloc %u");
    object = (_List_node_base **)relnum;
    gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar21);
    break;
  case 1:
    bVar61 = false;
    local_c0._0_4_ = local_c8;
LAB_002c70ec:
    object = (_List_node_base **)this_00;
    uVar23 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    if ((bool)cVar47) goto LAB_002c59a8;
    *(ushort *)view = (ushort)uVar23 << 8 | (ushort)uVar23 >> 8;
    SVar27 = (Status)(0xffff < uVar23 + 0x8000);
    break;
  case 2:
    bVar61 = false;
switchD_002c5379_caseD_2:
    object = (_List_node_base **)0x2;
    bVar62 = should_apply_static_reloc
                       ((Relocate *)gsym,(Mips_symbol<32> *)0x2,(uint)output_section,
                        (Output_section *)target,pTVar54);
    if (bVar62) {
      bVar62 = this->calculate_only_;
      uVar49 = local_c8;
      if (bVar61 != false) {
        uVar49 = *(uint *)view;
        uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18
        ;
      }
      object = (_List_node_base **)this_00;
      VVar20 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar49);
      if (bVar62 == false) {
        SVar27 = STATUS_OKAY;
        *(Value *)view =
             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;
      }
      else {
        SVar27 = STATUS_OKAY;
        this->calculated_value_ = VVar20;
      }
    }
    if ((gsym == (Sized_symbol<32> *)0x0) ||
       (((bVar18 = (byte)(gsym->super_Symbol).field_0x39 >> 2, (bVar18 & 0x3c) != 0x3c &&
         ((bVar18 & 0x30) != 0x20)) || (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 1))))
    break;
    pMVar53 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.got_offsets_;
    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
      if (*(char *)&gsym[1].super_Symbol.name_ == '\0') {
                    /* WARNING: Subroutine does not return */
        gold::do_gold_unreachable("../../gold/mips.cc",0x2e46,"relocate");
      }
      symval.u_.value =
           Mips16_stub_section<32,_true>::output_address
                     ((Mips16_stub_section<32,_true> *)pMVar53,
                      (Mips16_stub_section<32,_true> *)
                      &(((Sized_relobj<32,_true> *)
                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>
                        )->super_Relobj).super_Object.name_);
      psymval = &symval;
    }
    local_e8 = gsym[1].super_Symbol.u2_.shndx;
    pMVar51 = target->got_;
    if (pMVar51 != (Mips_output_data_got<32,_true> *)0x0) goto LAB_002c6275;
    goto LAB_002c638e;
  case 3:
switchD_002c4f87_caseD_3:
                    /* WARNING: Subroutine does not return */
    gold::do_gold_unreachable("../../gold/mips.cc",0x2e62,"relocate");
  case 4:
  case 100:
  case 0x85:
    bVar61 = false;
    bVar64 = (bool)((!bVar62 || !bVar63) & local_e3);
    uVar49 = *(uint *)view;
    uVar26 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;
    goto LAB_002c7644;
  case 5:
  case 0x68:
  case 0x86:
    goto switchD_002c4f87_caseD_5;
  case 6:
  case 0x69:
  case 0x87:
  case 0x9d:
    bVar61 = false;
    in_stack_fffffffffffffed0 = *(uint *)view;
    in_stack_fffffffffffffee0 =
         (_List_node_base *)
         (ulong)(in_stack_fffffffffffffed0 >> 0x18 | (in_stack_fffffffffffffed0 & 0xff0000) >> 8);
LAB_002c7171:
    if (rel_type == 9) {
      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;
      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs !=
          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs)
      {
        do {
          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {
            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);
            in_stack_fffffffffffffee8 =
                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)
            ;
            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);
            if (!bVar62) goto LAB_002c7bc0;
            in_stack_fffffffffffffed8 = local_108[1]._M_next;
            in_stack_fffffffffffffec0 = (Symbol *)local_108[2]._M_next;
            MVar5 = *(Mips_address *)&local_108[2]._M_prev;
            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;
            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);
            address_00 = *(Mips_address *)&local_108[3]._M_prev;
            sVar56 = (size_t)*(byte *)((long)&local_108[3]._M_prev + 4);
            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle
                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,
                       SUB81(in_stack_fffffffffffffec0,0));
            SVar27 = Mips_relocate_functions<32,_true>::do_relhi16
                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,
                                (Symbol_value<32> *)in_stack_fffffffffffffec0,MVar5,address_00,
                                SUB81(sVar56,0),(uint)in_stack_fffffffffffffee8,(bool)uVar57,
                                (uint)local_c0,target,(bool)cVar47,&this->calculated_value_);
            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);
            Mips_relocate_functions<32,_true>::mips_reloc_shuffle
                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);
            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;
            p_Var31 = local_108->_M_next;
            _DAT_0067db50 = _DAT_0067db50 + -1;
            std::__detail::_List_node_base::_M_unhook(local_108);
            operator_delete(local_108);
            local_108 = p_Var31;
          }
          else {
LAB_002c7bc0:
            local_108 = local_108->_M_next;
          }
        } while (local_108 !=
                 (_List_node_base *)
                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);
      }
      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;
      local_108 = (anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;
      if ((anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs !=
          (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs)
      {
        do {
          if (_Var14 == *(_Rb_tree_color *)&local_108[3]._M_next) {
            uVar49 = *(uint *)((long)&local_108[2]._M_prev + 4);
            in_stack_fffffffffffffee8 =
                 (_List_node_base *)CONCAT44((int)((ulong)in_stack_fffffffffffffee8 >> 0x20),uVar49)
            ;
            bVar62 = is_matching_lo16_reloc(uVar49,uVar21);
            if (!bVar62) goto LAB_002c7d70;
            in_stack_fffffffffffffed8 = local_108[1]._M_next;
            MVar5 = *(Mips_address *)&local_108[2]._M_prev;
            pMVar45 = (Mips_relobj<32,_true> *)local_108[1]._M_prev;
            pSVar44 = (Symbol_value<32> *)local_108[2]._M_next;
            uVar57 = *(undefined1 *)((long)&local_108[3]._M_next + 4);
            Mips_relocate_functions<32,_true>::mips_reloc_unshuffle
                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,
                       jal_shuffle);
            sVar56 = local_c0;
            SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local
                               ((uchar *)in_stack_fffffffffffffed8,pMVar45,pSVar44,MVar5,
                                (bool)uVar57,(uint)local_c0,target,(bool)cVar47,
                                &this->calculated_value_);
            object = (_List_node_base **)((ulong)in_stack_fffffffffffffee8 & 0xffffffff);
            Mips_relocate_functions<32,_true>::mips_reloc_shuffle
                      ((uchar *)in_stack_fffffffffffffed8,(uint)in_stack_fffffffffffffee8,false);
            if (SVar27 == STATUS_OVERFLOW) goto LAB_002c5940;
            p_Var31 = local_108->_M_next;
            _DAT_0067db30 = _DAT_0067db30 + -1;
            std::__detail::_List_node_base::_M_unhook(local_108);
            operator_delete(local_108);
            local_108 = p_Var31;
          }
          else {
LAB_002c7d70:
            local_108 = local_108->_M_next;
          }
          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;
        } while (local_108 !=
                 (_List_node_base *)
                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);
      }
    }
    if (local_f8._0_1_ == false) {
      object = (_List_node_base **)this_00;
      uVar23 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    }
    else {
      pSVar34 = target->gp_;
      if (uVar21 == 0x69) {
        if (pSVar34 == (Sized_symbol<32> *)0x0) {
          VVar39 = 0;
        }
        else {
          VVar39 = pSVar34->value_;
          object = (_List_node_base **)target;
          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&
              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&
             ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {
            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;
          }
        }
        iVar25 = VVar39 - (address & 0xfffffffc);
      }
      else if ((uVar21 == 0x87) || (uVar21 == 0x9d)) {
        if (pSVar34 == (Sized_symbol<32> *)0x0) {
          VVar39 = 0;
        }
        else {
          VVar39 = pSVar34->value_;
          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&
              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&
             ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {
            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;
          }
        }
        iVar25 = (VVar39 - address) + 3;
      }
      else {
        if (pSVar34 == (Sized_symbol<32> *)0x0) {
          VVar39 = 0;
        }
        else {
          VVar39 = pSVar34->value_;
          object = (_List_node_base **)target;
          if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&
              (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&
             ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {
            VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;
          }
        }
        iVar25 = (VVar39 - address) + 4;
      }
      uVar23 = iVar25 + (uint)local_c0;
    }
    if ((bool)cVar47) goto LAB_002c59a8;
    uVar23 = uVar23 ^ (uint)in_stack_fffffffffffffee0;
    SVar27 = STATUS_OKAY;
    *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ in_stack_fffffffffffffed0;
    break;
  case 7:
  case 8:
  case 0x65:
  case 0x88:
  case 0x89:
  case 0xac:
    pSVar34 = target->gp_;
    if (pSVar34 != (Sized_symbol<32> *)0x0) {
      bVar61 = false;
LAB_002c7253:
      local_c0._0_4_ = local_c8;
      VVar39 = pSVar34->value_;
      if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&
          (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&
         ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {
        VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;
      }
      goto LAB_002c7297;
    }
    bVar61 = false;
    VVar39 = 0;
    uVar49 = *(uint *)view;
    uVar49 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;
    local_c0._0_4_ = local_c8;
LAB_002c72d4:
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - VVar39;
    if (gsym == (Sized_symbol<32> *)0x0) {
      uVar23 = uVar23 + this_00->gp_;
      object = (_List_node_base **)this_00;
    }
    uVar26 = (uVar23 ^ uVar49) & 0xffff;
    if (uVar21 == 0xac) {
      uVar26 = (uVar23 ^ uVar49) & 0x7f;
    }
    uVar26 = uVar49 ^ uVar26;
    if ((bool)cVar47) goto LAB_002c59a8;
    *(uint *)view =
         uVar49 >> 0x18 | (uVar26 & 0xff0000) >> 8 | (uVar26 & 0xff00) << 8 | uVar26 << 0x18;
    if (0xffff < uVar23 + 0x8000) {
      pcVar28 = (char *)gettext(
                               "small-data section exceeds 64KB; lower small-data size limit (see option -G)"
                               );
      gold::gold_error(pcVar28);
      goto LAB_002c7359;
    }
LAB_002c5c87:
    SVar27 = STATUS_OKAY;
    break;
  case 9:
  case 0x66:
  case 0x8a:
    goto switchD_002c4f87_caseD_9;
  case 10:
    bVar61 = false;
LAB_002c6a55:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 4;
      uVar26 = uVar23 & 0x3fffc;
      local_c0._0_4_ = uVar26 - 0x40000;
      if ((uVar23 & 0x20000) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address >> 2;
    if ((bool)cVar47) goto LAB_002c59a8;
    uVar49 = uVar49 ^ uVar23;
    *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;
    object = (_List_node_base **)this_00;
    VVar24 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    SVar27 = STATUS_PCREL_UNALIGNED;
    if ((VVar24 & 3) == 0) {
      SVar27 = (Status)(0x3ffff < (VVar20 - address) + 0x20000);
    }
    break;
  case 0xb:
  case 0x67:
  case 0x8e:
    bVar61 = false;
switchD_002c5379_caseD_b:
    if (gsym == (Sized_symbol<32> *)0x0) {
LAB_002c82dc:
                    /* WARNING: Subroutine does not return */
      gold::do_gold_unreachable("../../gold/mips.cc",0x2f3d,"relocate");
    }
    if (target->got_ == (Mips_output_data_got<32,_true> *)0x0) {
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
      goto LAB_002c82dc;
    }
    local_e8 = Mips_output_data_got<32,_true>::got_offset
                         (target->got_,&gsym->super_Symbol,0,(Mips_relobj<32,_true> *)this_00);
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
LAB_002c6206:
      object = (_List_node_base **)(ulong)local_e8;
      uVar49 = Mips_output_data_got<32,_true>::gp_offset
                         ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,
                          (Mips_relobj<32,_true> *)this_00);
      if (this->calculate_only_ != false) goto LAB_002c67b0;
      uVar23 = *(uint *)view;
      uVar26 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;
      *(uint *)view = ((uVar26 & 0xff00) << 8 | uVar26 << 0x18) ^ uVar23;
      SVar27 = (Status)(0xffff < uVar49 + 0x8000);
      goto LAB_002c624f;
    }
    goto LAB_002c81f0;
  case 0xc:
    bVar61 = false;
switchD_002c5379_caseD_c:
    if (target->gp_ == (Sized_symbol<32> *)0x0) {
      VVar39 = 0;
    }
    else {
      VVar39 = target->gp_->value_;
      if (((target->got_ != (Mips_output_data_got<32,_true> *)0x0) &&
          (target->got_->primary_got_ != (Mips_got_info<32,_true> *)0x0)) &&
         ((Mips_got_info<32,_true> *)this_00->got_info_ != (Mips_got_info<32,_true> *)0x0)) {
        VVar39 = VVar39 + ((Mips_got_info<32,_true> *)this_00->got_info_)->offset_;
      }
    }
    uVar21 = *(uint *)view;
    uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
    if (bVar61 == false) {
      uVar21 = local_c8;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21);
    uVar23 = (VVar20 + this_00->gp_) - VVar39;
    if (!bVar62 || !bVar63) {
LAB_002c5ccb:
      uVar23 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | uVar23 << 0x18;
      pRVar50 = (Relocate *)view;
LAB_002c5c85:
      pRVar50->calculated_value_ = uVar23;
      goto LAB_002c5c87;
    }
    goto LAB_002c59a8;
  case 0x12:
    bVar61 = false;
switchD_002c5379_caseD_12:
    object = (_List_node_base **)0x12;
    bVar62 = should_apply_static_reloc
                       ((Relocate *)gsym,(Mips_symbol<32> *)0x12,(uint)output_section,
                        (Output_section *)target,pTVar54);
    if (bVar62) {
      cVar47 = this->calculate_only_;
      VVar20 = local_c8;
      if (bVar61 != false) {
        uVar10 = *(undefined8 *)view;
        VVar20 = (uint)(byte)((ulong)uVar10 >> 0x38) |
                 ((uint)((ulong)uVar10 >> 0x20) & 0xff0000) >> 8 |
                 (uint)((ulong)uVar10 >> 0x18) & 0xff0000 | (uint)((ulong)uVar10 >> 8) & 0xff000000;
      }
      goto LAB_002c6b22;
    }
    break;
  case 0x13:
  case 0x91:
  case 0xf9:
    bVar61 = false;
switchD_002c5379_caseD_13:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (gsym != (Sized_symbol<32> *)0x0) {
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        object = (_List_node_base **)gsym;
        local_e8 = Mips_output_data_got<32,_true>::got_offset
                             ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,
                              (Mips_relobj<32,_true> *)this_00);
        goto LAB_002c6043;
      }
      goto LAB_002c827b;
    }
    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8364;
    object = (_List_node_base **)(ulong)_Var14;
    local_e8 = (*(((Sized_relobj<32,_true> *)
                  &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
                 super_Relobj).super_Object._vptr_Object[0x2c])
                         (this_00,object,0,(long)(int)local_c8);
LAB_002c6043:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8276;
    object = (_List_node_base **)(ulong)local_e8;
    uVar23 = Mips_output_data_got<32,_true>::gp_offset
                       ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,
                        (Mips_relobj<32,_true> *)this_00);
    if (uVar21 == 0xf9) {
      pRVar50 = this;
      if (this->calculate_only_ == false) goto LAB_002c5ccb;
      goto LAB_002c5c85;
    }
    if (this->calculate_only_ == false) goto LAB_002c6098;
    goto LAB_002c59a8;
  case 0x14:
  case 0x92:
    bVar61 = false;
switchD_002c5379_caseD_14:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    uVar23 = uVar49;
    if (bVar61 == false) {
      uVar23 = local_c8;
    }
    pMVar53 = (Mips_relobj<32,_false> *)psymval;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);
    value = VVar20 + 0x8000 & 0xffff0000;
    pMVar45 = (Mips_relobj<32,_true> *)target->got_;
    if (pMVar45 != (Mips_relobj<32,_true> *)0x0) {
      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.
          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {
        pMVar53 = *(Mips_relobj<32,_false> **)
                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.
                    local_got_offsets_._M_h._M_rehash_policy;
      }
      else {
        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;
      }
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        uVar23 = Mips_got_info<32,_true>::get_got_page_offset
                           ((Mips_got_info<32,_true> *)pMVar53,value,
                            (Mips_output_data_got<32,_true> *)pMVar45);
        pMVar53 = (Mips_relobj<32,_false> *)target->got_;
        if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
          object = (_List_node_base **)(ulong)uVar23;
          uVar23 = Mips_output_data_got<32,_true>::gp_offset
                             ((Mips_output_data_got<32,_true> *)pMVar53,uVar23,
                              (Mips_relobj<32,_true> *)this_00);
          if ((bool)cVar47) goto LAB_002c59a8;
          uVar49 = uVar49 ^ uVar23;
          uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;
          goto LAB_002c60ab;
        }
        goto LAB_002c8280;
      }
      goto LAB_002c8285;
    }
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c81a2:
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
    goto LAB_002c81a7;
  case 0x15:
  case 0x93:
    bVar61 = false;
switchD_002c5379_caseD_15:
    uVar21 = *(uint *)view;
    uVar23 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    uVar26 = uVar23;
    if (bVar61 == false) {
      uVar26 = local_c8;
    }
    if (local_e2 != false) {
      object = (_List_node_base **)this_00;
      pTVar54 = (Target_mips<32,_true> *)psymval;
      VVar20 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);
      uVar41 = VVar20 + 0x8000 & 0xffff0000;
      pMVar45 = (Mips_relobj<32,_true> *)target->got_;
      if (pMVar45 == (Mips_relobj<32,_true> *)0x0) {
        Target_mips<32,_true>::got_section(pTVar54);
        goto LAB_002c8390;
      }
      if ((pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.
          local_got_offsets_._M_h._M_rehash_policy._M_next_resize == 0) {
        pMVar53 = *(Mips_relobj<32,_false> **)
                   &(pMVar45->super_Sized_relobj_file<32,_true>).super_Sized_relobj<32,_true>.
                    local_got_offsets_._M_h._M_rehash_policy;
      }
      else {
        pMVar53 = (Mips_relobj<32,_false> *)this_00->got_info_;
      }
      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c82c4;
      Mips_got_info<32,_true>::get_got_page_offset
                ((Mips_got_info<32,_true> *)pMVar53,uVar41,(Mips_output_data_got<32,_true> *)pMVar45
                );
      object = (_List_node_base **)this_00;
      VVar20 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar26);
      uVar26 = VVar20 - uVar41;
    }
    if ((bool)cVar47) {
      SVar27 = STATUS_OKAY;
      this->calculated_value_ = uVar26;
    }
    else {
      uVar23 = uVar23 ^ uVar26;
      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;
      SVar27 = (Status)(0xffff < uVar26 + 0x8000);
      object = (_List_node_base **)view;
    }
    break;
  case 0x16:
  case 0x1e:
  case 0x94:
  case 0x99:
    bVar61 = false;
switchD_002c5379_caseD_16:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (gsym == (Sized_symbol<32> *)0x0) {
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        object = (_List_node_base **)(ulong)_Var14;
        local_e8 = (*(((Sized_relobj<32,_true> *)
                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)
                     ->super_Relobj).super_Object._vptr_Object[0x2c])
                             (this_00,object,0,(long)(int)local_c8);
        goto LAB_002c5e6e;
      }
      goto LAB_002c81a2;
    }
    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8271;
    object = (_List_node_base **)gsym;
    local_e8 = Mips_output_data_got<32,_true>::got_offset
                         ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,
                          (Mips_relobj<32,_true> *)this_00);
LAB_002c5e6e:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c826c;
    object = (_List_node_base **)(ulong)local_e8;
    iVar25 = Mips_output_data_got<32,_true>::gp_offset
                       ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,
                        (Mips_relobj<32,_true> *)this_00);
    uVar49 = iVar25 + 0x8000U >> 0x10;
    if (this->calculate_only_ == false) {
      SVar27 = STATUS_OKAY;
      uVar23 = *(uint *)view;
      uVar49 = uVar49 ^ (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8);
      *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;
      goto LAB_002c624f;
    }
LAB_002c67b0:
    this->calculated_value_ = uVar49;
    SVar27 = STATUS_OKAY;
LAB_002c624f:
    if (local_e1 != false) {
      pMVar51 = target->got_;
      if (pMVar51 == (Mips_output_data_got<32,_true> *)0x0) {
LAB_002c638e:
        cVar47 = (char)pMVar51;
        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
switchD_002c4f87_caseD_5:
        bVar61 = false;
switchD_002c5379_caseD_5:
        if (rel_type == 4) {
          sVar56 = (size_t)local_f8;
          object = (_List_node_base **)this_00;
          SVar27 = Mips_relocate_functions<32,_true>::do_relhi16
                             (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,address,
                              local_f8._0_1_,uVar21,bVar61,0,target,(bool)cVar47,
                              &this->calculated_value_);
        }
        else {
          if (rel_type != 9) goto LAB_002c81f5;
          p_Var31 = (_List_node_base *)operator_new(0x40);
          object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs;
          SVar27 = STATUS_OKAY;
          p_Var31[1]._M_next = (_List_node_base *)view;
          p_Var31[1]._M_prev = (_List_node_base *)this_00;
          p_Var31[2]._M_next = (_List_node_base *)psymval;
          *(uint *)&p_Var31[2]._M_prev = local_c8;
          *(uint *)((long)&p_Var31[2]._M_prev + 4) = uVar21;
          *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;
          *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;
          *(Mips_address *)&p_Var31[3]._M_prev = address;
          *(bool *)((long)&p_Var31[3]._M_prev + 4) = local_f8._0_1_;
          std::__detail::_List_node_base::_M_hook
                    (p_Var31,(_List_node_base *)
                             &(anonymous_namespace)::Mips_relocate_functions<32,true>::hi16_relocs);
          _DAT_0067db50 = _DAT_0067db50 + 1;
        }
      }
      else {
        if (gsym != (Sized_symbol<32> *)0x0) {
LAB_002c6275:
          if ((char)gsym[1].value_ != '\0') {
            object = (_List_node_base **)this_00;
            pMVar53 = (Mips_relobj<32,_false> *)psymval;
            VVar20 = gold::Symbol_value<32>::value<true>
                               (psymval,(Sized_relobj_file<32,_true> *)this_00,0);
            if (*(int *)((long)&gsym[1].super_Symbol.u1_ + 4) != 2) {
              pMVar30 = pMVar51->primary_got_;
              if (pMVar30 == (Mips_got_info<32,_true> *)0x0) {
                iVar25 = pMVar51->master_got_info_->page_gotno_ +
                         pMVar51->master_got_info_->local_gotno_;
              }
              else {
                iVar25 = pMVar30->page_gotno_ + pMVar30->local_gotno_;
              }
              uVar21 = (gsym->super_Symbol).dynsym_index_;
              if (uVar21 != 0) {
                *(Value *)(pMVar51->got_view_ +
                          (((uVar21 - pMVar51->first_global_got_dynsym_index_) + iVar25 + 2) * 0x20
                          >> 3)) =
                     VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 |
                     VVar20 << 0x18;
                break;
              }
              goto LAB_002c8342;
            }
            goto LAB_002c8347;
          }
        }
        object = (_List_node_base **)this_00;
        VVar20 = gold::Symbol_value<32>::value<true>
                           (psymval,(Sized_relobj_file<32,_true> *)this_00,0);
        *(Value *)(pMVar51->got_view_ + local_e8) =
             VVar20 >> 0x18 | (VVar20 & 0xff0000) >> 8 | (VVar20 & 0xff00) << 8 | VVar20 << 0x18;
      }
    }
    break;
  case 0x17:
  case 0x1f:
  case 0x95:
  case 0x9a:
    bVar61 = false;
switchD_002c5379_caseD_17:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (gsym == (Sized_symbol<32> *)0x0) {
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        object = (_List_node_base **)(ulong)_Var14;
        local_e8 = (*(((Sized_relobj<32,_true> *)
                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)
                     ->super_Relobj).super_Object._vptr_Object[0x2c])
                             (this_00,object,0,(long)(int)local_c8);
        goto LAB_002c5ddf;
      }
LAB_002c8369:
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c836e:
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
      goto LAB_002c8373;
    }
    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
      object = (_List_node_base **)gsym;
      local_e8 = Mips_output_data_got<32,_true>::got_offset
                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,
                            (Mips_relobj<32,_true> *)this_00);
LAB_002c5ddf:
      pMVar53 = (Mips_relobj<32,_false> *)target->got_;
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        object = (_List_node_base **)(ulong)local_e8;
        uVar49 = Mips_output_data_got<32,_true>::gp_offset
                           ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,
                            (Mips_relobj<32,_true> *)this_00);
        if (this->calculate_only_ != false) goto LAB_002c67b0;
        SVar27 = STATUS_OKAY;
        uVar23 = *(uint *)view;
        uVar49 = (uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8) ^ uVar49;
        *(uint *)view = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar23;
        goto LAB_002c624f;
      }
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
    }
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c826c:
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c8271:
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c8276:
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c827b:
    target = (Target_mips<32,_true> *)object;
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
LAB_002c8280:
    value = (Mips_address)target;
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
    pMVar45 = extraout_RDX_02;
LAB_002c8285:
    Mips_output_data_got<32,_true>::get_got_page_offset
              ((Mips_output_data_got<32,_true> *)pMVar53,value,pMVar45);
LAB_002c828a:
                    /* WARNING: Subroutine does not return */
    gold::do_gold_unreachable("../../gold/mips.cc",0x86a,"tls_ldm_offset");
  case 0x18:
  case 0x96:
    bVar61 = false;
LAB_002c6b1a:
    VVar20 = -(uint)local_c0;
LAB_002c6b22:
    object = (_List_node_base **)this_00;
    uVar23 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);
    if (cVar47 != '\0') goto LAB_002c59a8;
    uVar43 = (ulong)uVar23;
    SVar27 = STATUS_OKAY;
    *(ulong *)view =
         (uVar43 & 0xff000000) << 8 | (uVar43 & 0xff0000) << 0x18 | (uVar43 & 0xff00) << 0x28 |
         uVar43 << 0x38;
    break;
  case 0x1c:
  case 0x97:
    bVar61 = false;
LAB_002c59bd:
    uVar21 = *(uint *)view;
    uVar23 = (uVar21 & 0xff0000) >> 8;
    uVar49 = uVar21 >> 0x18 | uVar23;
    local_c0._0_4_ = local_c8;
    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {
      local_c0._0_4_ = uVar49;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = (uint)((ulong)VVar20 + 0x80008000 >> 0x20);
    goto joined_r0x002c59a3;
  case 0x1d:
  case 0x98:
    bVar61 = false;
LAB_002c6b55:
    uVar23 = *(uint *)view;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar49 = (uVar23 & 0xff0000) >> 8;
      uVar21 = uVar23 >> 0x18 | uVar49;
      local_c0._0_4_ = uVar21 - 0x10000;
      if ((uVar49 & 0x8000) == 0) {
        local_c0._0_4_ = uVar21;
      }
    }
    object = (_List_node_base **)this_00;
    gold::Symbol_value<32>::value<true>
              (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    if (!bVar62 || !bVar63) {
      uVar23 = uVar23 & 0xffff;
      pRVar50 = (Relocate *)view;
      goto LAB_002c5c85;
    }
    SVar27 = STATUS_OKAY;
    this->calculated_value_ = 0;
    break;
  case 0x25:
  case 0x9c:
    bVar61 = false;
switchD_002c5379_caseD_25:
    if (gsym != (Sized_symbol<32> *)0x0) {
      bVar62 = (gsym->super_Symbol).dynsym_index_ != 0;
      object = (_List_node_base **)(ulong)bVar62;
      bVar62 = symbol_refs_local(&gsym->super_Symbol,bVar62,true);
      if (!bVar62) break;
      cVar47 = this->calculate_only_;
    }
    VVar20 = 0;
    if (bVar61 == false) {
      VVar20 = local_c8;
    }
    uVar49 = *(uint *)view;
    uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;
    uVar49 = uVar23;
    if (((uVar21 == 0x25) && (local_e3 != 1)) && ((uVar23 == 0x3200008 || (uVar23 == 0x320f809)))) {
      object = (_List_node_base **)this_00;
      VVar20 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);
      if ((VVar20 - address) + 0x1fffc < 0x40000) {
        uVar21 = (VVar20 - address) - 4 >> 2 & 0xffff;
        uVar49 = uVar21 | 0x10000000;
        if (uVar23 != 0x3200008) {
          uVar49 = uVar21 | 0x4110000;
        }
      }
    }
    if (cVar47 == '\0') {
      SVar27 = STATUS_OKAY;
      *(uint *)view =
           uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18;
    }
    else {
      this->calculated_value_ = uVar49;
      SVar27 = STATUS_OKAY;
    }
    break;
  case 0x27:
  case 0x29:
    bVar61 = false;
switchD_002c5379_caseD_27:
    uVar21 = *(uint *)view;
    uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
    if (bVar61 == false) {
      uVar21 = local_c8;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21);
    uVar23 = VVar20 - 0x8000;
    if (!bVar62 || !bVar63) goto LAB_002c5ccb;
    goto LAB_002c59a8;
  case 0x2a:
  case 0x6a:
  case 0xa2:
    bVar61 = false;
switchD_002c5379_caseD_2a:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (gsym == (Sized_symbol<32> *)0x0) {
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        local_e8 = (*(((Sized_relobj<32,_true> *)
                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)
                     ->super_Relobj).super_Object._vptr_Object[0x2c])
                             (this_00,(ulong)_Var14,2,(long)(int)local_c8);
        goto LAB_002c5c48;
      }
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
LAB_002c8333:
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
      goto LAB_002c8338;
    }
    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
      local_e8 = Mips_output_data_got<32,_true>::got_offset
                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,2,
                            (Mips_relobj<32,_true> *)this_00);
LAB_002c5c48:
      pMVar53 = (Mips_relobj<32,_false> *)target->got_;
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) goto LAB_002c5c62;
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
    }
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
    goto LAB_002c83ab;
  case 0x2b:
  case 0x6b:
  case 0xa3:
    bVar61 = false;
switchD_002c5379_caseD_2b:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
LAB_002c8364:
      Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
      goto LAB_002c8369;
    }
    if ((((Sized_relobj<32,_true> *)
         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
        local_got_offsets_)._M_h._M_rehash_policy._M_next_resize == 0) {
      pMVar30 = *(Mips_got_info<32,_true> **)
                 &(((Sized_relobj<32,_true> *)
                   &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
                  local_got_offsets_)._M_h._M_rehash_policy;
    }
    else {
      pMVar30 = (Mips_got_info<32,_true> *)this_00->got_info_;
    }
    if (pMVar30 == (Mips_got_info<32,_true> *)0x0) goto LAB_002c828a;
    local_e8 = pMVar30->tls_ldm_offset_;
    object = (_List_node_base **)(ulong)local_e8;
    uVar23 = Mips_output_data_got<32,_true>::gp_offset
                       ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,
                        (Mips_relobj<32,_true> *)this_00);
LAB_002c5c74:
    pRVar50 = this;
    if (this->calculate_only_ != false) goto LAB_002c5c85;
LAB_002c6098:
    uVar21 = *(uint *)view;
    uVar49 = (uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8) ^ uVar23;
    uVar21 = ((uVar49 & 0xff00) << 8 | uVar49 << 0x18) ^ uVar21;
LAB_002c60ab:
    *(uint *)view = uVar21;
    SVar27 = (Status)(0xffff < uVar23 + 0x8000);
    break;
  case 0x2c:
  case 0x6c:
  case 0xa4:
    bVar61 = false;
switchD_002c5379_caseD_2c:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    uVar23 = uVar49;
    if (bVar61 == false) {
      uVar23 = local_c8;
    }
    object = (_List_node_base **)this_00;
    uVar23 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);
    goto LAB_002c5a76;
  case 0x2d:
  case 0x6d:
  case 0xa5:
switchD_002c4f87_caseD_2d:
    bVar61 = false;
switchD_002c5379_caseD_2d:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    uVar23 = uVar49;
    if (bVar61 == false) {
      uVar23 = local_c8;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);
    uVar23 = VVar20 - 0x8000;
    goto joined_r0x002c59a3;
  case 0x2e:
  case 0x6e:
  case 0xa6:
    bVar61 = false;
switchD_002c5379_caseD_2e:
    pMVar53 = (Mips_relobj<32,_false> *)target->got_;
    if (gsym == (Sized_symbol<32> *)0x0) {
      if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
        local_e8 = (*(((Sized_relobj<32,_true> *)
                      &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)
                     ->super_Relobj).super_Object._vptr_Object[0x2c])
                             (this_00,(ulong)_Var14,1,(long)(int)local_c8);
        goto LAB_002c5b06;
      }
      goto LAB_002c836e;
    }
    if (pMVar53 != (Mips_relobj<32,_false> *)0x0) {
      local_e8 = Mips_output_data_got<32,_true>::got_offset
                           ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,1,
                            (Mips_relobj<32,_true> *)this_00);
LAB_002c5b06:
      pMVar53 = (Mips_relobj<32,_false> *)target->got_;
      if (pMVar53 == (Mips_relobj<32,_false> *)0x0) {
        Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
        goto switchD_002c4f87_caseD_2d;
      }
LAB_002c5c62:
      object = (_List_node_base **)(ulong)local_e8;
      uVar23 = Mips_output_data_got<32,_true>::gp_offset
                         ((Mips_output_data_got<32,_true> *)pMVar53,local_e8,
                          (Mips_relobj<32,_true> *)this_00);
      goto LAB_002c5c74;
    }
LAB_002c8338:
    Target_mips<32,_true>::got_section((Target_mips<32,_true> *)pMVar53);
    goto LAB_002c833d;
  case 0x2f:
  case 0x30:
    bVar61 = false;
switchD_002c5379_caseD_2f:
    uVar21 = *(uint *)view;
    uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
    if (bVar61 == false) {
      uVar21 = local_c8;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar21);
    uVar23 = VVar20 - 0x7000;
    if ((bool)cVar47) goto LAB_002c59a8;
    SVar27 = STATUS_OKAY;
    *(uint *)view =
         uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8 | (uVar23 & 0xff00) << 8 | VVar20 << 0x18;
    break;
  case 0x31:
  case 0x6f:
  case 0xa9:
    bVar61 = false;
switchD_002c5379_caseD_31:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    uVar23 = uVar49;
    if (bVar61 == false) {
      uVar23 = local_c8;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);
    uVar23 = VVar20 + 0x1000;
LAB_002c5a76:
    uVar23 = uVar23 >> 0x10;
    goto joined_r0x002c59a3;
  case 0x32:
  case 0x70:
  case 0xaa:
    bVar61 = false;
switchD_002c5379_caseD_32:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    uVar23 = uVar49;
    if (bVar61 == false) {
      uVar23 = local_c8;
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,uVar23);
    uVar23 = VVar20 - 0x7000;
joined_r0x002c59a3:
    if (bVar62 && bVar63) goto LAB_002c59a8;
    *(uint *)view = uVar21 ^ (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18);
    SVar27 = STATUS_OKAY;
    break;
  case 0x3c:
    bVar61 = false;
LAB_002c6f06:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 4;
      uVar26 = uVar23 & 0x7ffffc;
      local_c0._0_4_ = uVar26 - 0x800000;
      if ((uVar23 & 0x400000) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address >> 2;
    if ((bool)cVar47) goto LAB_002c59a8;
    uVar49 = uVar49 ^ uVar23;
    *(uint *)view = uVar21 ^ ((uVar49 & 0x1f0000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);
    object = (_List_node_base **)this_00;
    VVar24 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    SVar27 = STATUS_PCREL_UNALIGNED;
    if ((VVar24 & 3) == 0) {
      SVar27 = (Status)(0x7fffff < (VVar20 - address) + 0x400000);
    }
    break;
  case 0x3d:
    bVar61 = false;
LAB_002c6fd2:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 4;
      uVar26 = uVar23 & 0xffffffc;
      local_c0._0_4_ = uVar26 + 0xf0000000;
      if ((uVar23 & 0x8000000) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address >> 2;
    if ((bool)cVar47) goto LAB_002c59a8;
    uVar49 = uVar49 ^ uVar23;
    *(uint *)view =
         uVar21 ^ ((uVar49 & 0x3ffffff) >> 0x18 | (uVar49 & 0xff0000) >> 8 | (uVar49 & 0xff00) << 8
                  | (uVar49 & 0x3ffffff) << 0x18);
    object = (_List_node_base **)this_00;
    VVar24 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    SVar27 = STATUS_PCREL_UNALIGNED;
    if ((VVar24 & 3) == 0) {
      SVar27 = (Status)(0xfffffff < (VVar20 - address) + 0x8000000);
    }
    break;
  case 0x3e:
    bVar61 = false;
LAB_002c6d53:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 8;
      uVar26 = uVar23 & 0x1ffff8;
      local_c0._0_4_ = uVar26 - 0x200000;
      if ((uVar23 & 0x100000) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar26 = VVar20 - (address & 0xfffffff8);
    uVar23 = uVar26 >> 3;
    if ((bool)cVar47) goto LAB_002c59a8;
    uVar49 = uVar49 ^ uVar23;
    *(uint *)view = uVar21 ^ ((uVar49 & 0x30000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar21 = VVar20 & 7;
joined_r0x002c6ec7:
    SVar27 = STATUS_PCREL_UNALIGNED;
    if (uVar21 == 0) {
      SVar27 = (Status)(0x1fffff < uVar26 + 0x100000);
    }
    break;
  case 0x3f:
    bVar61 = false;
LAB_002c6e24:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 4;
      uVar26 = uVar23 & 0x1ffffc;
      local_c0._0_4_ = uVar26 - 0x200000;
      if ((uVar23 & 0x100000) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar26 = VVar20 - address;
    uVar23 = uVar26 >> 2;
    if (!bVar62 || !bVar63) {
      uVar49 = uVar49 ^ uVar23;
      *(uint *)view = uVar21 ^ ((uVar49 & 0x70000) >> 8 | (uVar49 & 0xff00) << 8 | uVar49 << 0x18);
      object = (_List_node_base **)this_00;
      VVar20 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
      uVar21 = VVar20 & 3;
      goto joined_r0x002c6ec7;
    }
    goto LAB_002c59a8;
  case 0x40:
    bVar61 = false;
switchD_002c5379_caseD_40:
    if (rel_type == 4) {
      uVar21 = *(uint *)view;
      uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
      VVar20 = uVar49 << 0x10;
      if (bVar61 == false) {
        VVar20 = local_c8;
      }
      object = (_List_node_base **)this_00;
      VVar20 = gold::Symbol_value<32>::value<true>
                         (psymval,(Sized_relobj_file<32,_true> *)this_00,VVar20);
      uVar23 = (VVar20 - address) + 0x8000 >> 0x10;
      if ((bool)cVar47) goto LAB_002c59a8;
      uVar23 = uVar23 ^ uVar49;
      SVar27 = STATUS_OKAY;
      *(uint *)view = ((uVar23 & 0xff00) << 8 | uVar23 << 0x18) ^ uVar21;
    }
    else {
      if (rel_type != 9) {
                    /* WARNING: Subroutine does not return */
        gold::do_gold_unreachable("../../gold/mips.cc",0x2eda,"relocate");
      }
      p_Var31 = (_List_node_base *)operator_new(0x40);
      *(undefined1 *)((long)&p_Var31[3]._M_prev + 4) = 0;
      SVar27 = STATUS_OKAY;
      *(undefined4 *)((long)&p_Var31[2]._M_prev + 4) = 0;
      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs;
      p_Var31[1]._M_next = (_List_node_base *)view;
      p_Var31[1]._M_prev = (_List_node_base *)this_00;
      p_Var31[2]._M_next = (_List_node_base *)psymval;
      *(uint *)&p_Var31[2]._M_prev = local_c8;
      *(_Rb_tree_color *)&p_Var31[3]._M_next = _Var14;
      *(bool *)((long)&p_Var31[3]._M_next + 4) = bVar61;
      *(Mips_address *)&p_Var31[3]._M_prev = address;
      std::__detail::_List_node_base::_M_hook
                (p_Var31,(_List_node_base *)
                         &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);
      _DAT_0067db10 = _DAT_0067db10 + 1;
    }
    break;
  case 0x41:
    bVar61 = false;
LAB_002c6ccf:
    uVar21 = *(uint *)view;
    uVar23 = (uVar21 & 0xff0000) >> 8;
    uVar49 = uVar21 >> 0x18 | uVar23;
    local_c0._0_4_ = local_c8;
    if ((bVar61 != false) && (local_c0._0_4_ = uVar49 - 0x10000, (uVar23 & 0x8000) == 0)) {
      local_c0._0_4_ = uVar49;
    }
    if ((rel_type == 9) &&
       (local_98 = (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs,
       (anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs !=
       (_List_node_base *)&(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs))
    {
      do {
        if (_Var14 == *(_Rb_tree_color *)&local_98[3]._M_next) {
          in_stack_fffffffffffffee0 = local_98[1]._M_next;
          VVar20 = *(Value *)&local_98[2]._M_prev;
          uVar23 = *(uint *)&in_stack_fffffffffffffee0->_M_next;
          in_stack_fffffffffffffed8 = (_List_node_base *)(ulong)uVar23;
          uVar26 = uVar23 >> 0x18 | (uVar23 & 0xff0000) >> 8;
          if (*(char *)((long)&local_98[3]._M_next + 4) != '\0') {
            VVar20 = (uint)local_c0 + uVar26 * 0x10000;
          }
          iVar25 = *(int *)&local_98[3]._M_prev;
          VVar20 = gold::Symbol_value<32>::value<true>
                             ((Symbol_value<32> *)local_98[2]._M_next,
                              (Sized_relobj_file<32,_true> *)local_98[1]._M_prev,VVar20);
          uVar41 = (0x8000 - iVar25) + VVar20 >> 0x10;
          if (bVar62 && bVar63) {
            this->calculated_value_ = uVar41;
          }
          else {
            uVar41 = uVar41 ^ uVar26;
            *(uint *)&in_stack_fffffffffffffee0->_M_next =
                 ((uVar41 & 0xff00) << 8 | uVar41 << 0x18) ^ uVar23;
          }
          in_stack_fffffffffffffee8 = local_98->_M_next;
          _DAT_0067db10 = _DAT_0067db10 + -1;
          std::__detail::_List_node_base::_M_unhook(local_98);
          operator_delete(local_98);
          local_98 = in_stack_fffffffffffffee8;
        }
        else {
          local_98 = local_98->_M_next;
        }
      } while (local_98 !=
               (_List_node_base *)
               &(anonymous_namespace)::Mips_relocate_functions<32,true>::pchi16_relocs);
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address;
    if ((bool)cVar47) goto LAB_002c59a8;
    SVar27 = STATUS_OKAY;
    *(uint *)view = (((uVar23 ^ uVar49) & 0xff00) << 8 | (uVar23 ^ uVar49) << 0x18) ^ uVar21;
    break;
  case 0x8b:
    bVar61 = false;
LAB_002c6bb8:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 2;
      uVar26 = uVar23 & 0xff;
      local_c0._0_4_ = uVar26 - 0x100;
      if ((uVar23 & 0x80) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address >> 1;
    if ((bool)cVar47) {
LAB_002c78e8:
      SVar27 = STATUS_OKAY;
      this->calculated_value_ = uVar23;
    }
    else {
      *(uint *)view = uVar21 ^ ((uVar23 ^ uVar49) & 0x7f) << 0x18;
      SVar27 = (Status)(0xff < (VVar20 - address) + 0x80);
    }
    break;
  case 0x8c:
    bVar61 = false;
LAB_002c6c3e:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 2;
      uVar26 = uVar23 & 0x7fe;
      local_c0._0_4_ = uVar26 - 0x800;
      if ((uVar23 & 0x400) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address >> 1;
    if ((bool)cVar47) goto LAB_002c78e8;
    uVar23 = uVar23 ^ uVar49;
    *(uint *)view = uVar21 ^ ((uVar23 & 0x300) << 8 | uVar23 << 0x18);
    SVar27 = (Status)(0x7ff < (VVar20 - address) + 0x400);
    break;
  case 0x8d:
    bVar61 = false;
LAB_002c69c5:
    uVar21 = *(uint *)view;
    uVar49 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8;
    local_c0._0_4_ = local_c8;
    if (bVar61 != false) {
      uVar23 = uVar49 * 2;
      uVar26 = uVar23 & 0x1fffe;
      local_c0._0_4_ = uVar26 - 0x20000;
      if ((uVar23 & 0x10000) == 0) {
        local_c0._0_4_ = uVar26;
      }
    }
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address >> 1;
    if ((bool)cVar47) goto LAB_002c78e8;
    uVar23 = uVar23 ^ uVar49;
    *(uint *)view = uVar21 ^ ((uVar23 & 0xff00) << 8 | uVar23 << 0x18);
    SVar27 = (Status)(0x1ffff < (VVar20 - address) + 0x10000);
    break;
  case 0xf8:
    bVar61 = false;
LAB_002c6ed9:
    object = (_List_node_base **)this_00;
    VVar20 = gold::Symbol_value<32>::value<true>
                       (psymval,(Sized_relobj_file<32,_true> *)this_00,(uint)local_c0);
    uVar23 = VVar20 - address;
    if (!bVar62 || !bVar63) goto LAB_002c5ccb;
LAB_002c59a8:
    SVar27 = STATUS_OKAY;
    this->calculated_value_ = uVar23;
  }
LAB_002c5940:
  iVar25 = (int)object;
  puVar58 = puVar58 + 1;
  if (&symval == (Symbol_value<32> *)puVar58) {
LAB_002c5380:
    uVar21 = uVar60 - 0x85;
    if (local_f4 < 0xd) {
      uVar49 = *(uint *)view;
      uVar23 = uVar49 >> 0x18 | (uVar49 & 0xff0000) >> 8;
      uVar26 = (uVar49 & 0xff00) << 8;
      uVar41 = uVar49 << 0x18;
      uVar22 = uVar23 | uVar26 | uVar41;
      uVar43 = (ulong)uVar22;
      uVar19 = (ushort)(uVar22 >> 0x10);
      if (uVar21 < 0x29) {
        if ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) == 0) {
LAB_002c5754:
          uVar19 = uVar19 & 0xf800 | (ushort)uVar23 & 0x7e0 | (ushort)((uVar49 & 0xff0000) >> 0x13);
          uVar43 = (ulong)((uVar26 | uVar41) >> 0xb | uVar49 >> 0x18 & 0x1f);
        }
      }
      else if (((uVar60 == 0x85 || uVar60 == 100) || uVar60 == 4) || (uVar60 != 100)) {
        if (uVar60 != 100) goto LAB_002c5754;
        uVar19 = uVar19 >> 5 & 0x1f |
                 (ushort)(uVar22 >> 0xb) & 0x3e0 | (ushort)(uVar41 >> 0x10) & 0xfc00;
      }
LAB_002c5471:
      uVar38 = (ushort)uVar43 << 8 | (ushort)uVar43 >> 8;
      iVar25 = (int)CONCAT62((int6)(uVar43 >> 0x10),uVar38);
      *(ushort *)(view + 2) = uVar38;
      *(ushort *)view = uVar19 << 8 | uVar19 >> 8;
    }
    else if (((uVar21 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar21 & 0x3f) & 1) != 0)) &&
            (1 < uVar60 - 0x8b)) {
      uVar21 = *(uint *)view;
      uVar21 = uVar21 >> 0x18 | (uVar21 & 0xff0000) >> 8 | (uVar21 & 0xff00) << 8 | uVar21 << 0x18;
      uVar43 = (ulong)uVar21;
      uVar19 = (ushort)(uVar21 >> 0x10);
      goto LAB_002c5471;
    }
    if (SVar27 == STATUS_OVERFLOW) {
      if (gsym == (Sized_symbol<32> *)0x0) {
        pcVar13 = (((Sized_relobj<32,_true> *)
                   &(this_00->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
                  super_Relobj).super_Object.name_._M_dataplus._M_p;
        iVar25 = 0x2c7937;
        pcVar28 = (char *)gettext("relocation overflow: %u against local symbol %u in %s");
        gold::gold_error_at_location<32,_true>
                  (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,(ulong)_Var14,pcVar13);
      }
      else {
        bVar18 = (gsym->super_Symbol).field_0x3a;
        if ((bVar18 & 7) == 0) {
          uVar21 = (gsym->super_Symbol).u2_.shndx;
          if (((gsym->super_Symbol).field_0x3b & 0x20) == 0) {
            bVar61 = gold::Symbol::is_common_shndx(uVar21);
            bVar61 = !bVar61;
          }
          else {
            bVar61 = uVar21 != 0;
          }
        }
        else {
          bVar61 = (bVar18 & 7) != 4;
        }
        if ((bVar61) && (((gsym->super_Symbol).field_0x3a & 7) == 0)) {
          uVar9 = ((gsym->super_Symbol).u1_.output_data)->address_;
          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);
          _Var15._M_p = local_58._M_dataplus._M_p;
          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\' defined in %s");
                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */
          gold::gold_error_at_location<32,_true>
                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p,uVar9);
          iVar25 = (int)relnum;
          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;
        }
        else {
          gold::Symbol::demangled_name(&local_58,&gsym->super_Symbol);
          _Var15._M_p = local_58._M_dataplus._M_p;
          pcVar28 = (char *)gettext("relocation overflow: %u against \'%s\'");
                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */
          gold::gold_error_at_location<32,_true>
                    (relinfo,relnum,(ulong)uVar48,pcVar28,(ulong)uVar60,_Var15._M_p);
          iVar25 = (int)relnum;
          if ((anon_union_16_2_edb7204a_for_basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_9
               *)local_58._M_dataplus._M_p == &local_58.field_2) goto LAB_002c53ec;
        }
        operator_delete(local_58._M_dataplus._M_p);
      }
    }
    else if (SVar27 != STATUS_OKAY) {
      if (SVar27 == STATUS_BAD_RELOC) {
        pcVar28 = "unexpected opcode while processing relocation";
      }
      else {
        if (SVar27 != STATUS_PCREL_UNALIGNED) {
                    /* WARNING: Subroutine does not return */
          gold::do_gold_unreachable("../../gold/mips.cc",0x3035,"relocate");
        }
        pcVar28 = "unaligned PC-relative relocation";
      }
      pcVar28 = (char *)gettext(pcVar28);
      gold::gold_error_at_location<32,_true>(relinfo,relnum,(ulong)uVar48,pcVar28);
      iVar25 = (int)relnum;
    }
LAB_002c53ec:
    gold::Symbol_value<32>::~Symbol_value(&symval,iVar25);
    return true;
  }
  uVar21 = *puVar58;
  goto LAB_002c4f1d;
LAB_002c82c4:
  Mips_output_data_got<32,_true>::get_got_page_offset
            ((Mips_output_data_got<32,_true> *)pMVar53,(Mips_address)object,pMVar45);
LAB_002c82c9:
  if ((char)puVar58 != '\0') goto LAB_002c4d83;
LAB_002c5869:
  pMVar42 = *(Mips_relobj<32,_false> **)&gsym[1].super_Symbol.field_0x38;
LAB_002c5870:
  local_d0 = (Mips_relobj<32,_false> *)&symval;
  symval.u_.value =
       Mips16_stub_section<32,_true>::output_address
                 ((Mips16_stub_section<32,_true> *)pMVar42,
                  (Mips16_stub_section<32,_true> *)
                  &(((Sized_relobj<32,_true> *)
                    &(pMVar42->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
                   super_Relobj).super_Object.name_);
  psymval = (Symbol_value<32> *)local_d0;
  bVar61 = true;
  local_e1 = true;
  object = (_List_node_base **)local_d0;
  goto LAB_002c4e20;
LAB_002c4d83:
  iVar25 = *(int *)((long)&gsym[1].super_Symbol.name_ + 4);
  if (iVar25 != -1) goto LAB_002c5256;
  bVar61 = true;
  goto LAB_002c4d98;
switchD_002c4f87_caseD_9:
  bVar61 = false;
switchD_002c5379_caseD_9:
  if (gsym == (Sized_symbol<32> *)0x0) {
    if (rel_type == 4) {
      sVar56 = 0;
      object = (_List_node_base **)this_00;
      pMVar53 = (Mips_relobj<32,_false> *)view;
      SVar27 = Mips_relocate_functions<32,_true>::do_relgot16_local
                         (view,(Mips_relobj<32,_true> *)this_00,psymval,local_c8,bVar61,0,target,
                          (bool)cVar47,&this->calculated_value_);
    }
    else {
      if (rel_type != 9) {
LAB_002c8373:
                    /* WARNING: Subroutine does not return */
        gold::do_gold_unreachable("../../gold/mips.cc",0x2f66,"relocate");
      }
      pMVar53 = (Mips_relobj<32,_false> *)operator_new(0x40);
      (((Sized_relobj<32,_true> *)
       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).
      super_Object.field_0x3c = 0;
      SVar27 = STATUS_OKAY;
      (((Sized_relobj<32,_true> *)
       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).
      super_Object.shnum_ = 0;
      object = &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs;
      (((Sized_relobj<32,_true> *)
       &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj).
      super_Object.name_._M_string_length = (size_type)view;
      *(Mips_relobj<32,_false> **)
       &(((Sized_relobj<32,_true> *)
         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj
        ).super_Object.name_.field_2 = this_00;
      *(Symbol_value<32> **)
       ((long)&(((Sized_relobj<32,_true> *)
                &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
               super_Relobj).super_Object.name_.field_2 + 8) = psymval;
      *(uint *)&(((Sized_relobj<32,_true> *)
                 &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
                super_Relobj).super_Object.input_file_ = local_c8;
      *(uint *)((long)&(((Sized_relobj<32,_true> *)
                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>
                        )->super_Relobj).super_Object.input_file_ + 4) = uVar21;
      *(_Rb_tree_color *)
       &(((Sized_relobj<32,_true> *)
         &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->super_Relobj
        ).super_Object.offset_ = _Var14;
      *(bool *)((long)&(((Sized_relobj<32,_true> *)
                        &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>
                        )->super_Relobj).super_Object.offset_ + 4) = bVar61;
      std::__detail::_List_node_base::_M_hook
                ((_List_node_base *)pMVar53,
                 (_List_node_base *)
                 &(anonymous_namespace)::Mips_relocate_functions<32,true>::got16_relocs);
      _DAT_0067db30 = _DAT_0067db30 + 1;
    }
    goto LAB_002c624f;
  }
  pMVar53 = (Mips_relobj<32,_false> *)target->got_;
  if (pMVar53 == (Mips_relobj<32,_false> *)0x0) goto LAB_002c8333;
  pSVar34 = gsym;
  local_e8 = Mips_output_data_got<32,_true>::got_offset
                       ((Mips_output_data_got<32,_true> *)pMVar53,&gsym->super_Symbol,0,
                        (Mips_relobj<32,_true> *)this_00);
  local_98._0_1_ = (byte)pSVar34;
  pMVar53 = (Mips_relobj<32,_false> *)target->got_;
  if (pMVar53 != (Mips_relobj<32,_false> *)0x0) goto LAB_002c6206;
  pMVar32 = (Mips_relobj<32,_false> *)
            Target_mips<32,_true>::got_section((Target_mips<32,_true> *)0x0);
  pMVar42 = extraout_RDX;
LAB_002c6490:
  uVar21 = (uint)(byte)local_98;
  if ((pMVar42 != pMVar32) &&
     (*(_Rb_tree_color *)
       ((long)&(((Sized_relobj<32,_true> *)
                &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
               super_Relobj).super_Object.name_.field_2 + 8) <= _Var14)) {
    pMVar53 = (Mips_relobj<32,_false> *)
              (((Sized_relobj<32,_true> *)
               &(pMVar32->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
              super_Relobj).super_Object.input_file_;
  }
LAB_002c64ab:
  local_d0 = (Mips_relobj<32,_false> *)&symval;
  object = (_List_node_base **)
           &(((Sized_relobj<32,_true> *)
             &(pMVar53->super_Sized_relobj_file<32,_false>).super_Sized_relobj<32,_false>)->
            super_Relobj).super_Object.name_;
  symval.u_.value =
       Mips16_stub_section<32,_true>::output_address
                 ((Mips16_stub_section<32,_true> *)pMVar53,(Mips16_stub_section<32,_true> *)object);
  bVar62 = uVar60 == 100;
  puVar58 = (uint *)0x0;
  if ((uVar49 & 0xf7) == 0x85) goto LAB_002c7a61;
  local_e1 = true;
  bVar61 = bVar62;
LAB_002c64da:
  local_d0 = (Mips_relobj<32,_false> *)&symval;
  puVar58 = (uint *)0x0;
  psymval = (Symbol_value<32> *)local_d0;
  goto LAB_002c4e43;
LAB_002c7a61:
  psymval = (Symbol_value<32> *)local_d0;
  local_e1 = true;
  goto LAB_002c4e56;
}


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

/* WARNING: Type propagation algorithm not settling */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

undefined8
MASKED(ulong *param_1,long param_2,int param_3,long param_4,undefined8 param_5,long param_6,
            uint *param_7,undefined8 *param_8,uint *param_9,ulong *param_10,uint param_11)

{
  undefined4 uVar1;
  undefined4 uVar2;
  long *plVar3;
  int *piVar4;
  ulong uVar5;
  uint *puVar6;
  uint uVar7;
  undefined1 *puVar8;
  long *plVar9;
  bool bVar10;
  byte bVar11;
  char cVar12;
  char cVar13;
  char cVar14;
  ushort uVar15;
  uint uVar16;
  uint uVar17;
  undefined4 uVar18;
  uint uVar19;
  int iVar20;
  undefined8 uVar21;
  undefined8 uVar22;
  ulong uVar23;
  long lVar24;
  ulong uVar25;
  long *plVar26;
  long *plVar27;
  long *plVar28;
  ushort uVar29;
  long lVar30;
  int extraout_EDX;
  uint uVar31;
  uint uVar32;
  long *plVar33;
  ulong uVar34;
  uint uVar35;
  uint uVar36;
  ulong *puVar37;
  int iVar38;
  byte *pbVar39;
  undefined8 *puVar40;
  byte *pbVar41;
  char *pcVar42;
  undefined8 uVar43;
  uint *puVar44;
  uint uVar45;
  ulong uVar46;
  uint uVar47;
  bool bVar48;
  bool bVar49;
  bool bVar50;
  bool bVar51;
  byte bVar52;
  uint local_130;
  sbyte local_118;
  undefined8 *local_108;
  uint local_f4;
  byte local_ec;
  uint local_e8;
  byte local_e3;
  byte local_e2;
  bool local_e1;
  uint *local_d0;
  uint local_c8;
  uint local_c4;
  uint local_c0;
  uint local_b0;
  undefined8 *local_98;
  uint local_84;
  uint auStack_80 [2];
  undefined8 local_78;
  undefined4 local_70;
  uint local_68;
  undefined1 *local_58 [2];
  undefined1 auStack_48 [24];
  
  bVar52 = 0;
  uVar17 = *(uint *)(*(long *)(param_2 + 0x20) + 0x14);
  uVar47 = *(uint *)(*(long *)(param_2 + 0x20) + 0x24);
  uVar23 = (ulong)(uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |
                  uVar17 << 0x18) /
           (ulong)(uVar47 >> 0x18 | (uVar47 & 0xff0000) >> 8 | (uVar47 & 0xff00) << 8 |
                  uVar47 << 0x18);
  uVar17 = *param_7;
  uVar35 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;
  uVar17 = param_7[1];
  uVar47 = uVar17 >> 0x18;
  uVar36 = uVar47 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;
  uVar34 = (ulong)uVar36;
  uVar7 = uVar36 >> 8;
  if (param_3 == 4) {
    local_c4 = 0;
    uVar16 = param_7[2];
    local_b0 = 0xffffffff;
    local_c8 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;
    if (param_6 + 1U < uVar23) {
      uVar16 = param_7[3];
      local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18
      ;
      local_c4 = param_7[4] >> 0x18;
    }
  }
  else if (param_6 + 1U < uVar23) {
    local_c8 = 0;
    uVar16 = param_7[2];
    local_b0 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8 | (uVar16 & 0xff00) << 8 | uVar16 << 0x18;
    local_c4 = param_7[3] >> 0x18;
  }
  else {
    local_c4 = 0;
    local_b0 = 0xffffffff;
    local_c8 = 0;
  }
  local_70 = 0x80000000;
  local_68 = 0;
  plVar3 = *(long **)(param_2 + 0x10);
  local_78 = 0xffffffff00000000;
  if (param_8 == (undefined8 *)0x0) {
    if (((ulong)*(uint *)(plVar3 + 0x48) + (plVar3[0x47] - plVar3[0x45]) * 8) -
        (ulong)*(uint *)(plVar3 + 0x46) <= (ulong)uVar7) {
                    /* WARNING: Subroutine does not return */
      FUN_00352af0("../../gold/mips.cc",0x65f,"local_symbol_is_mips16");
    }
    local_ec = (byte)((uVar17 & 0xff0000) >> 0x10);
    uVar25 = 1L << (local_ec & 0x3f);
    uVar23 = *(ulong *)(plVar3[0x45] + (ulong)(uVar36 >> 0xe) * 8);
    uVar46 = uVar25 & uVar23;
    puVar44 = (uint *)(ulong)(uVar46 != 0);
    if (((ulong)*(uint *)(plVar3 + 0x4d) + (plVar3[0x4c] - plVar3[0x4a]) * 8) -
        (ulong)*(uint *)(plVar3 + 0x4b) <= (ulong)uVar7) {
LAB_002c821c:
                    /* WARNING: Subroutine does not return */
      FUN_00352af0("../../gold/mips.cc",0x668,"local_symbol_is_micromips");
    }
    uVar5 = *(ulong *)(plVar3[0x4a] + (ulong)(uVar36 >> 0xe) * 8);
    uVar17 = (uint)((uVar25 & uVar5) != 0);
    local_e1 = ((uVar23 | uVar5) & uVar25) != 0;
    if (local_e1) {
                    /* try { // try from 002c699b to 002c83b4 has its CatchHandler @ 002c83b5 */
      local_68 = FUN_001d7270(param_9,plVar3,1);
      param_9 = (uint *)&local_78;
    }
    if (uVar47 == 100) {
      plVar33 = (long *)plVar3[0x69];
      plVar9 = plVar3 + 0x68;
      plVar28 = plVar33;
      plVar27 = plVar9;
      if (plVar33 != (long *)0x0) {
        do {
          if (*(uint *)(plVar28 + 4) < uVar7) {
            plVar26 = (long *)plVar28[3];
          }
          else {
            plVar26 = (long *)plVar28[2];
            plVar27 = plVar28;
          }
          plVar28 = plVar26;
        } while (plVar26 != (long *)0x0);
        if (((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) && (plVar27[5] != 0)) {
          plVar28 = plVar9;
          if (uVar46 == 0) {
            do {
              plVar27 = plVar33;
              if (*(uint *)(plVar27 + 4) < uVar7) {
                plVar33 = (long *)plVar27[3];
                plVar27 = plVar28;
              }
              else {
                plVar33 = (long *)plVar27[2];
              }
              plVar28 = plVar27;
            } while (plVar33 != (long *)0x0);
            lVar30 = 0;
            if ((plVar9 != plVar27) && (*(uint *)(plVar27 + 4) <= uVar7)) {
              lVar30 = plVar27[5];
            }
            puVar44 = (uint *)0x0;
            cVar12 = '\0';
            goto LAB_002c5870;
          }
          puVar44 = (uint *)0x1;
        }
      }
LAB_002c56d8:
      cVar12 = '\0';
      goto LAB_002c56df;
    }
    plVar9 = (long *)plVar3[99];
    plVar33 = plVar3 + 0x62;
    if ((long *)plVar3[99] == (long *)0x0) goto LAB_002c56d8;
    do {
      while (plVar28 = plVar9, *(uint *)(plVar28 + 4) < uVar7) {
        plVar27 = plVar28 + 3;
        plVar9 = (long *)*plVar27;
        plVar28 = plVar33;
        if ((long *)*plVar27 == (long *)0x0) goto LAB_002c66ba;
      }
      plVar9 = (long *)plVar28[2];
      plVar33 = plVar28;
    } while ((long *)plVar28[2] != (long *)0x0);
LAB_002c66ba:
    if (((plVar3 + 0x62 == plVar28) || (uVar7 < *(uint *)(plVar28 + 4))) ||
       (cVar12 = '\0', plVar28[5] == 0)) goto LAB_002c56d8;
LAB_002c509e:
    local_98._0_1_ = (byte)uVar17;
    local_d0 = (uint *)&local_78;
    iVar38 = *(int *)(param_2 + 0x30);
    cVar13 = FUN_00297400(plVar3,iVar38);
    if ((cVar13 == '\0') && (iVar38 != (int)plVar3[0x7e])) {
      if (param_8 == (undefined8 *)0x0) {
        lVar30 = plVar3[99];
        if (lVar30 == 0) goto LAB_002c64ab;
        do {
          if (*(uint *)(lVar30 + 0x20) < uVar7) {
            lVar30 = *(long *)(lVar30 + 0x18);
          }
          else {
            lVar30 = *(long *)(lVar30 + 0x10);
          }
          if (lVar30 == 0) goto LAB_002c6490;
        } while( true );
      }
      if (*(char *)(param_8 + 9) != '\0') {
        if (*(int *)((long)param_8 + 0x4c) == -1) goto LAB_002c64ab;
        lVar30 = *(long *)(param_4 + 0x98);
        if (lVar30 != 0) {
          local_e1 = (bool)(*(byte *)(lVar30 + 0x20) & 1);
          if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {
            bVar49 = uVar47 == 100;
            local_68 = *(int *)((long)param_8 + 0x4c) + *(int *)(lVar30 + 8);
            bVar52 = 0;
            bVar48 = bVar49;
            if ((uVar47 & 0xf7) != 0x85) goto LAB_002c64da;
            param_9 = local_d0;
            goto LAB_002c5150;
          }
                    /* WARNING: Subroutine does not return */
          FUN_00291e90();
        }
        FUN_00290a30();
        goto LAB_002c82c4;
      }
                    /* WARNING: Subroutine does not return */
      FUN_00352af0("../../gold/mips.cc",0x2d5f,"relocate");
    }
    if (param_8 == (undefined8 *)0x0) {
LAB_002c56df:
      bVar48 = uVar47 == 100;
      goto LAB_002c4e20;
    }
  }
  else {
    bVar11 = *(byte *)((long)param_8 + 0x39) >> 2;
    bVar48 = (bVar11 & 0x3c) == 0x3c;
    puVar44 = (uint *)(ulong)bVar48;
    bVar49 = (bVar11 & 0x30) == 0x20;
    uVar17 = (uint)bVar49;
    local_e1 = bVar49 || bVar48;
    if ((bVar49 || bVar48) && (iVar38 = FUN_001d7270(param_9,plVar3,0), iVar38 != 0)) {
      local_68 = FUN_001d7270(param_9,plVar3,0);
      local_68 = local_68 | 1;
      param_9 = (uint *)&local_78;
    }
    else {
      local_e1 = false;
    }
    local_d0 = (uint *)&local_78;
    iVar38 = 0;
    if (uVar47 - 1 < 0xf9) {
      iVar38 = (int)(char)(&DAT_0055e3e0)[uVar47 - 1];
    }
                    /* try { // try from 002c4c4a to 002c54e2 has its CatchHandler @ 002c83b5 */
    cVar12 = FUN_00228fa0(param_8,iVar38);
    if (cVar12 == '\0') {
      bVar48 = false;
      bVar50 = *(char *)((long)param_8 + 0x65) == '\0';
      if (!bVar50) {
LAB_002c4c60:
        lVar30 = *(long *)(param_4 + 0xb8);
        if (lVar30 == 0) {
          FUN_00290a10();
LAB_002c81eb:
          FUN_00290a50();
LAB_002c81f0:
          FUN_00290a70();
LAB_002c81f5:
                    /* WARNING: Subroutine does not return */
          FUN_00352af0("../../gold/mips.cc",0x2e88,"relocate");
        }
        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          FUN_00291e90();
        }
        bVar48 = CARRY4(*(uint *)((long)param_8 + 0x54),*(uint *)(lVar30 + 8));
        uVar16 = *(uint *)((long)param_8 + 0x54) + *(uint *)(lVar30 + 8);
        bVar50 = uVar16 == 0;
        goto LAB_002c4c88;
      }
    }
    else {
      if (*(char *)((long)param_8 + 0x65) != '\0') goto LAB_002c4c60;
      lVar30 = *(long *)(param_4 + 0x30);
      if (*(int *)(param_8 + 0xd) == -1) {
        if (lVar30 == 0) {
LAB_002c8217:
          FUN_00290a50();
          goto LAB_002c821c;
        }
        if (*(int *)((long)param_8 + 0x6c) == -1) {
                    /* WARNING: Subroutine does not return */
          FUN_00352af0("../../gold/mips.cc",0x9ed,"comp_entry_address");
        }
        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          FUN_00291e90();
        }
        bVar11 = *(byte *)(param_4 + 0x14);
        uVar16 = *(int *)((long)param_8 + 0x6c) + 1 +
                 *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);
        if (bVar11 == 0) {
          FUN_00290d80();
LAB_002c832e:
          FUN_00290a70();
LAB_002c8333:
          FUN_00290a70();
LAB_002c8338:
          FUN_00290a70();
LAB_002c833d:
          FUN_00290a50();
LAB_002c8342:
          FUN_00290e30();
LAB_002c8347:
                    /* WARNING: Subroutine does not return */
          FUN_00352af0("../../gold/mips.cc",0x895,"get_primary_got_offset");
        }
        bVar48 = false;
        bVar50 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;
        if (bVar50) {
          puVar44 = (uint *)(ulong)bVar11;
          bVar11 = bVar49;
        }
        uVar17 = (uint)bVar11;
      }
      else {
        if (lVar30 == 0) goto LAB_002c81eb;
        if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {
                    /* WARNING: Subroutine does not return */
          FUN_00291e90();
        }
        uVar16 = *(int *)(param_8 + 0xd) + *(int *)(lVar30 + 8);
        puVar44 = (uint *)0x0;
        bVar48 = CARRY4(uVar16,*(uint *)(lVar30 + 0x68));
        uVar16 = uVar16 + *(uint *)(lVar30 + 0x68);
        bVar50 = uVar16 == 0;
        uVar17 = 0;
      }
LAB_002c4c88:
      local_68 = uVar16;
      param_9 = local_d0;
    }
    lVar30 = 9;
    pbVar39 = (byte *)*param_8;
    pbVar41 = (byte *)"_gp_disp";
    do {
      if (lVar30 == 0) break;
      lVar30 = lVar30 + -1;
      bVar48 = *pbVar39 < *pbVar41;
      bVar50 = *pbVar39 == *pbVar41;
      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;
      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;
    } while (bVar50);
    lVar30 = 0xf;
    bVar49 = !bVar48 && !bVar50;
    bVar50 = bVar49 < bVar48;
    bVar51 = bVar49 == bVar48;
    pbVar39 = (byte *)*param_8;
    pbVar41 = (byte *)"__gnu_local_gp";
    do {
      if (lVar30 == 0) break;
      lVar30 = lVar30 + -1;
      bVar50 = *pbVar39 < *pbVar41;
      bVar51 = *pbVar39 == *pbVar41;
      pbVar39 = pbVar39 + (ulong)bVar52 * -2 + 1;
      pbVar41 = pbVar41 + (ulong)bVar52 * -2 + 1;
    } while (bVar51);
    if (bVar49 == bVar48) {
      bVar52 = *(byte *)((long)plVar3 + 0x36c) >> 1 & 1 ^ 1;
      if ((!bVar50 && !bVar51) == bVar50) {
        if (bVar52 == 0) goto LAB_002c51e0;
      }
      else if (bVar52 == 0) goto LAB_002c5078;
      if (((1 < uVar47 - 0x68) && (1 < uVar47 - 5)) && ((1 < uVar47 - 0x86 && (1 < uVar47 - 0x40))))
      {
        uVar21 = gettext(
                        "relocations against _gp_disp are permitted only with R_MIPS_HI16 and R_MIPS_LO16 relocations."
                        );
        FUN_0034aed0(param_2,param_6,uVar35,uVar21);
      }
      cVar12 = '\x01';
    }
    else {
      if ((!bVar50 && !bVar51) == bVar50) {
LAB_002c51e0:
        if (*(long *)(param_4 + 0x28) == 0) {
          local_68 = 0;
        }
        else {
          local_68 = *(uint *)(*(long *)(param_4 + 0x28) + 0x40);
          if (((*(long *)(param_4 + 0x20) != 0) &&
              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {
            local_68 = local_68 + *(int *)(plVar3[0x6e] + 0x10c);
          }
        }
        param_9 = local_d0;
      }
LAB_002c5078:
      cVar12 = '\0';
    }
    if (uVar47 == 100) {
      lVar24 = param_8[0xf];
      if (lVar24 == 0) {
        if (param_8[0x10] == 0) goto LAB_002c4d83;
        if (*(int *)((long)param_8 + 0x24) == -1) goto LAB_002c82c9;
        goto LAB_002c5869;
      }
      if ((*(int *)((long)param_8 + 0x24) == -1) && ((char)puVar44 != '\0')) goto LAB_002c4d83;
      lVar30 = lVar24;
      if (param_8[0x10] == 0) goto LAB_002c5870;
      if (*(uint *)(plVar3 + 7) < 2) goto LAB_002c5870;
      uVar34 = ((ulong)*(uint *)(plVar3 + 0x7c) + (plVar3[0x7b] - plVar3[0x79]) * 8) -
               (ulong)*(uint *)(plVar3 + 0x7a);
      if (1 < uVar34) {
        uVar23 = 1;
        do {
          lVar30 = param_8[0x10];
          if ((*(ulong *)(plVar3[0x79] + (uVar23 >> 6) * 8) & 1L << ((byte)uVar23 & 0x3f)) != 0)
          goto LAB_002c5870;
          lVar30 = lVar24;
          if (uVar23 == (ulong)(*(uint *)(plVar3 + 7) - 2) + 1) goto LAB_002c5870;
          uVar23 = uVar23 + 1;
        } while (uVar23 != uVar34);
      }
LAB_002c81a7:
                    /* WARNING: Subroutine does not return */
      FUN_00352af0("../../gold/mips.cc",0x723,"is_mips16_call_fp_stub_section");
    }
    if (param_8[0xe] != 0) {
      if ((uVar47 == 0x67) && (*(char *)(param_8 + 9) == '\0')) {
        if (*(int *)((long)param_8 + 0x4c) == -1) {
          bVar48 = false;
          goto LAB_002c4e31;
        }
        goto LAB_002c5256;
      }
      goto LAB_002c509e;
    }
  }
  if (*(int *)((long)param_8 + 0x4c) == -1) {
LAB_002c52f0:
    bVar48 = uVar47 == 100;
    if (uVar47 == 0x85 || bVar48) goto LAB_002c4d98;
    bVar48 = false;
    bVar49 = false;
    if ((uVar36 & 0xf7) != 0x85) goto LAB_002c4e43;
    goto LAB_002c5320;
  }
LAB_002c5256:
  local_d0 = (uint *)&local_78;
  uVar36 = (uint)uVar34;
  if (((*(byte *)((long)plVar3 + 0x36c) & 1) == 0) &&
     (cVar13 = FUN_00290610(uVar47,(ulong)puVar44 & 0xff), cVar13 != '\0')) {
    lVar30 = *(long *)(param_4 + 0x98);
    if (lVar30 != 0) {
      if ((*(byte *)(lVar30 + 0x20) & 1) == 0) {
                    /* WARNING: Subroutine does not return */
        FUN_00291e90();
      }
      local_98._0_1_ = (byte)uVar17;
      bVar48 = uVar47 == 100;
      local_68 = extraout_EDX + *(int *)(lVar30 + 8) +
                 (uint)((*(byte *)((long)param_8 + 0x39) >> 2 & 0x30) == 0x20);
      bVar49 = (bool)((byte)local_98 & bVar48);
      param_9 = local_d0;
joined_r0x002c52d3:
      if (bVar49 != false) {
        uVar17 = (uint)bVar49;
        goto LAB_002c532c;
      }
LAB_002c4e31:
      bVar49 = bVar48;
      if ((uVar36 & 0xf7) == 0x85) goto LAB_002c5320;
LAB_002c4e43:
      bVar49 = bVar48;
      if (uVar47 - 0x8b < 2) {
LAB_002c5320:
        if ((char)puVar44 != '\0') {
LAB_002c532c:
          uVar21 = gettext("MIPS16 and microMIPS functions cannot call each other");
          FUN_0034a750(uVar21);
        }
      }
LAB_002c4e56:
      local_98._0_1_ = (byte)uVar17;
      bVar52 = (byte)puVar44;
      if (param_8 == (undefined8 *)0x0) {
        local_e3 = (bVar52 ^ 1) & bVar49;
        local_e2 = local_e3;
        if (local_e3 != 0) goto LAB_002c4e81;
        local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85;
        if (local_e3 == 0) {
LAB_002c5694:
          local_e3 = (byte)local_98 | bVar52;
          if (uVar47 != 4 && uVar47 != 0x25) {
            local_e3 = uVar47 == 4 || uVar47 == 0x25;
          }
          if (param_8 != (undefined8 *)0x0) goto LAB_002c5175;
          local_e2 = 1;
          goto LAB_002c4e81;
        }
        local_84 = 0x85;
        auStack_80[0] = 0;
        auStack_80[1] = 0;
        local_f4 = 0x21;
        local_e2 = local_e3;
LAB_002c581a:
        if (1 < local_84 - 0x8b) {
          uVar17 = (uint)(ushort)((ushort)*param_10 << 8 | (ushort)*param_10 >> 8);
          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;
LAB_002c4ee9:
          uVar17 = uVar17 << 0x10 | (uint)uVar29;
LAB_002c4ef1:
          *(uint *)param_10 =
               uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;
        }
      }
      else {
LAB_002c5150:
        cVar13 = FUN_002e7200(param_8);
        if (cVar13 == '\0') {
          local_e3 = (bVar52 ^ 1) & bVar49;
          if ((local_e3 == 0) && (local_e3 = ((byte)local_98 ^ 1) & uVar47 == 0x85, local_e3 == 0))
          goto LAB_002c5694;
        }
        else {
          local_e3 = 0;
        }
LAB_002c5175:
        if (*(char *)((long)param_8 + 100) != '\0') {
          local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);
          if ((local_e2 == 0) && (local_e2 = uVar47 == 0x92 || uVar47 == 0x14, (bool)local_e2))
          goto LAB_002c5579;
LAB_002c4e81:
          local_f4 = uVar47 - 100;
          uVar34 = (ulong)(uVar47 - 0x85);
          auStack_80[0] = 0;
          auStack_80[1] = 0;
          if (0xc < local_f4) goto LAB_002c55ef;
          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;
          uVar17 = (uint)uVar15;
          uVar29 = *(ushort *)((long)param_10 + 2) << 8 | *(ushort *)((long)param_10 + 2) >> 8;
          local_84 = uVar47;
          if (uVar47 - 0x85 < 0x29) {
            if ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) == 0) goto LAB_002c5704;
            goto LAB_002c4ee9;
          }
          if (uVar47 == 100) {
            local_f4 = 0;
            goto LAB_002c4ee9;
          }
LAB_002c5704:
          uVar17 = (uint)(uVar15 & 0x7e0) | uVar29 & 0x1f |
                   (uVar15 & 0xf800) << 0x10 | (uVar29 & 0xffe0) << 0xb |
                   (uint)(((ulong)uVar15 & 0x1f) << 0xb);
          goto LAB_002c4ef1;
        }
                    /* try { // try from 002c5545 to 002c66fe has its CatchHandler @ 002c83b5 */
        local_e2 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,0);
        if ((local_e2 != 0) ||
           (local_e2 = uVar47 == 0x14 || uVar47 == 0x92, uVar47 != 0x14 && uVar47 != 0x92))
        goto LAB_002c4e81;
LAB_002c5579:
        if (uVar47 - 0x85 < 0x29) {
          uVar23 = 1L << ((byte)(uVar47 - 0x85) & 0x3f) & 0x1b3e1fff3ff;
          uVar34 = (ulong)((-(uint)(uVar23 == 0) & 0xffffff82) + 0xc);
          local_f4 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x2d;
          uVar47 = (-(uint)(uVar23 == 0) & 0xffffff82) + 0x91;
        }
        else {
          uVar34 = 0xffffff8e;
          uVar47 = 0x13;
          local_f4 = 0xffffffaf;
        }
        auStack_80[0] = 0;
        auStack_80[1] = 0;
        local_e2 = 0;
LAB_002c55ef:
        local_84 = uVar47;
        if (((uint)uVar34 < 0x29) && ((0x1b3e1fff3ffU >> (uVar34 & 0x3f) & 1) != 0))
        goto LAB_002c581a;
      }
      uVar47 = local_84;
      bVar48 = param_3 == 9;
      auStack_80[0] = 0;
      auStack_80[1] = 0;
      puVar44 = &local_84;
      uVar16 = 0;
      local_e8 = 0;
      uVar17 = local_84;
LAB_002c4f1d:
      if (uVar17 == 0) goto LAB_002c5380;
      bVar49 = local_b0 == uVar35;
      bVar50 = local_c4 != 0;
      cVar13 = bVar49 && bVar50;
      uVar36 = (uint)(byte)cVar13;
      uVar34 = (ulong)uVar36;
      if (*(char *)((long)param_1 + 4) == '\0') {
        *(char *)((long)param_1 + 4) = cVar13;
        switch(uVar17) {
        default:
          goto switchD_002c5379_caseD_0;
        case 1:
          uVar15 = (ushort)*param_10 << 8 | (ushort)*param_10 >> 8;
          uVar17 = local_c8;
          if (bVar48 != false) {
            uVar17 = (uint)uVar15;
            if ((short)uVar15 < 0) {
              uVar17 = uVar15 - 0x10000;
            }
          }
          goto LAB_002c70ec;
        case 2:
          goto switchD_002c5379_caseD_2;
        case 3:
          goto switchD_002c4f87_caseD_3;
        case 4:
        case 100:
        case 0x85:
          bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);
          uVar36 = (uint)*param_10;
          uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8;
          uVar45 = uVar16 | uVar36 << 0x18;
          local_c0 = local_c8;
          if (bVar48 == false) {
LAB_002c7644:
            bVar10 = bVar48;
            if (bVar51 == false) {
LAB_002c764c:
              bVar51 = param_8 == (undefined8 *)0x0;
              if ((local_e3 == 1) || (uVar17 != 0x85)) goto LAB_002c73c9;
              if (bVar51) {
                local_118 = 1;
                uVar36 = 0xf8000000;
                goto LAB_002c73e1;
              }
              local_118 = 1;
              uVar36 = local_c0 & 0x7ffffff;
              if ((local_c0 & 0x4000000) != 0) {
                uVar36 = (local_c0 & 0x7ffffff) + 0xf8000000;
              }
              goto LAB_002c73f5;
            }
LAB_002c7cf3:
            bVar48 = bVar10;
            bVar52 = FUN_001d7270(param_9,plVar3,0);
            if ((bool)(bVar52 & 3) == (uVar17 == 4)) goto LAB_002c764c;
            uVar21 = gettext("JALX to a non-word-aligned address");
            FUN_0034a800(uVar21);
LAB_002c7d32:
            uVar16 = 2;
          }
          else {
            if (uVar17 == 0x85) {
              local_c0 = uVar45 * 2 & 0x7fffffe;
              goto LAB_002c7644;
            }
            local_c0 = (uVar16 | uVar36 << 0x18 & 0x3ffffff) << 2;
            bVar10 = bVar51;
            if (bVar51 != false) goto LAB_002c7cf3;
LAB_002c73c9:
            bVar51 = param_8 == (undefined8 *)0x0;
            if (bVar51) {
              local_118 = 2;
              uVar36 = 0xf0000000;
LAB_002c73e1:
              bVar51 = true;
              uVar36 = param_11 + 4 & uVar36 | local_c0;
            }
            else {
              local_118 = 2;
              uVar36 = local_c0 & 0xfffffff;
              if ((local_c0 & 0x8000000) != 0) {
                uVar36 = (local_c0 & 0xfffffff) + 0xf0000000;
              }
            }
LAB_002c73f5:
            uVar36 = FUN_001d7270(param_9,plVar3,uVar36);
            if (((!bVar51) && (!bVar49 || !bVar50)) &&
               ((cVar13 = FUN_002e7200(param_8), cVar13 == '\0' &&
                ((uVar36 >> local_118) >> 0x1a != param_11 + 4 >> (local_118 + 0x1aU & 0x1f))))) {
LAB_002c7359:
              uVar16 = 1;
              goto LAB_002c5940;
            }
            uVar19 = uVar45 ^ (uVar36 >> local_118 ^ uVar45) & 0x3ffffff;
            if (local_e3 != 0) {
              uVar45 = uVar45 >> 0x1a;
              if (uVar17 == 100) {
                iVar38 = 7;
                bVar51 = uVar45 - 6 < 2;
              }
              else if (uVar17 == 0x85) {
                iVar38 = 0x3c;
                bVar51 = uVar45 - 0x3c < 2;
              }
              else {
                bVar51 = uVar45 == 3 || uVar45 == 0x1d;
                iVar38 = 0x1d;
              }
              if ((!bVar51) && (!bVar49 || !bVar50)) {
                uVar21 = gettext(
                                "Unsupported jump between ISA modes; consider recompiling with interlinking enabled."
                                );
                FUN_0034a750(uVar21);
                goto LAB_002c7d32;
              }
              uVar19 = uVar19 & 0x3ffffff | iVar38 << 0x1a;
            }
            if (*(long *)(PTR_DAT_0067cb08 + 0x10) == 0) {
                    /* WARNING: Subroutine does not return */
              FUN_002932f0();
            }
            if (!bVar49 || !bVar50) goto LAB_002c5ccb;
            uVar16 = 0;
            *(uint *)param_1 = uVar19;
          }
          goto LAB_002c5940;
        case 5:
        case 0x68:
        case 0x86:
          goto switchD_002c5379_caseD_5;
        case 6:
        case 0x69:
        case 0x87:
        case 0x9d:
          local_130 = (uint)*param_10;
          uVar16 = (local_130 & 0xff0000) >> 8;
          uVar45 = local_130 >> 0x18 | uVar16;
          uVar19 = local_c8;
          if ((bVar48 != false) && (uVar19 = uVar45 - 0x10000, (uVar16 & 0x8000) == 0)) {
            uVar19 = uVar45;
          }
          goto LAB_002c7171;
        case 7:
        case 8:
        case 0x65:
        case 0x88:
        case 0x89:
        case 0xac:
          lVar30 = *(long *)(param_4 + 0x28);
          if (lVar30 != 0) goto LAB_002c7253;
          iVar38 = 0;
LAB_002c7297:
          uVar36 = (uint)*param_10;
          uVar19 = (uVar36 & 0xff0000) >> 8;
          uVar16 = uVar36 >> 0x18 | uVar19;
          uVar45 = uVar16 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;
          uVar36 = local_c8;
          if (bVar48 != false) {
            if (uVar17 == 0xac) {
              uVar36 = uVar45 * 4 & 0x1fc;
            }
            else {
              uVar36 = uVar16 - 0x10000;
              if ((uVar19 & 0x8000) == 0) {
                uVar36 = uVar16;
              }
            }
          }
          goto LAB_002c72d4;
        case 9:
        case 0x66:
        case 0x8a:
          goto switchD_002c5379_caseD_9;
        case 10:
          goto LAB_002c6a55;
        case 0xb:
        case 0x67:
        case 0x8e:
          goto switchD_002c5379_caseD_b;
        case 0xc:
          goto switchD_002c5379_caseD_c;
        case 0x12:
          goto switchD_002c5379_caseD_12;
        case 0x13:
        case 0x91:
        case 0xf9:
          goto switchD_002c5379_caseD_13;
        case 0x14:
        case 0x92:
          goto switchD_002c5379_caseD_14;
        case 0x15:
        case 0x93:
          goto switchD_002c5379_caseD_15;
        case 0x16:
        case 0x1e:
        case 0x94:
        case 0x99:
          goto switchD_002c5379_caseD_16;
        case 0x17:
        case 0x1f:
        case 0x95:
        case 0x9a:
          goto switchD_002c5379_caseD_17;
        case 0x18:
        case 0x96:
          local_c0 = local_c8;
          if (bVar48 != false) {
            uVar34 = *param_10;
            local_c0 = (uint)(byte)(uVar34 >> 0x38) | ((uint)(uVar34 >> 0x20) & 0xff0000) >> 8 |
                       (uint)(uVar34 >> 0x18) & 0xff0000 | (uint)(uVar34 >> 8) & 0xff000000;
          }
          goto LAB_002c6b1a;
        case 0x1c:
        case 0x97:
          goto LAB_002c59bd;
        case 0x1d:
        case 0x98:
          goto LAB_002c6b55;
        case 0x25:
        case 0x9c:
          goto switchD_002c5379_caseD_25;
        case 0x27:
        case 0x29:
          goto switchD_002c5379_caseD_27;
        case 0x2a:
        case 0x6a:
        case 0xa2:
          goto switchD_002c5379_caseD_2a;
        case 0x2b:
        case 0x6b:
        case 0xa3:
          goto switchD_002c5379_caseD_2b;
        case 0x2c:
        case 0x6c:
        case 0xa4:
          goto switchD_002c5379_caseD_2c;
        case 0x2d:
        case 0x6d:
        case 0xa5:
          goto switchD_002c5379_caseD_2d;
        case 0x2e:
        case 0x6e:
        case 0xa6:
          goto switchD_002c5379_caseD_2e;
        case 0x2f:
        case 0x30:
          goto switchD_002c5379_caseD_2f;
        case 0x31:
        case 0x6f:
        case 0xa9:
          goto switchD_002c5379_caseD_31;
        case 0x32:
        case 0x70:
        case 0xaa:
          goto switchD_002c5379_caseD_32;
        case 0x3c:
          goto LAB_002c6f06;
        case 0x3d:
          goto LAB_002c6fd2;
        case 0x3e:
          goto LAB_002c6d53;
        case 0x3f:
          goto LAB_002c6e24;
        case 0x40:
          goto switchD_002c5379_caseD_40;
        case 0x41:
          goto LAB_002c6ccf;
        case 0x8b:
          goto LAB_002c6bb8;
        case 0x8c:
          goto LAB_002c6c3e;
        case 0x8d:
          goto LAB_002c69c5;
        case 0xf8:
          uVar17 = local_c8;
          if (bVar48 != false) {
            uVar17 = (uint)*param_10;
            uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |
                     uVar17 << 0x18;
          }
          goto LAB_002c6ed9;
        }
      }
      local_c8 = (uint)*param_1;
      *(char *)((long)param_1 + 4) = cVar13;
      local_c0 = local_c8;
      switch(uVar17) {
      default:
        bVar48 = false;
switchD_002c5379_caseD_0:
        uVar21 = gettext("unsupported reloc %u");
        FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar17);
        break;
      case 1:
        bVar48 = false;
        uVar17 = local_c8;
LAB_002c70ec:
        uVar19 = FUN_001d7270(param_9,plVar3,uVar17);
        if ((bool)cVar13) goto LAB_002c59a8;
        *(ushort *)param_10 = (ushort)uVar19 << 8 | (ushort)uVar19 >> 8;
        uVar16 = (uint)(0xffff < uVar19 + 0x8000);
        break;
      case 2:
        bVar48 = false;
switchD_002c5379_caseD_2:
        cVar13 = FUN_0029fc10(param_8,2,param_5,param_4);
        if (cVar13 != '\0') {
          cVar13 = *(char *)((long)param_1 + 4);
          uVar36 = local_c8;
          if (bVar48 != false) {
            uVar36 = (uint)*param_10;
            uVar36 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 |
                     uVar36 << 0x18;
          }
          uVar36 = FUN_001d7270(param_9,plVar3,uVar36);
          if (cVar13 == '\0') {
            uVar16 = 0;
            *(uint *)param_10 =
                 uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18
            ;
          }
          else {
            uVar16 = 0;
            *(uint *)param_1 = uVar36;
          }
        }
        if ((param_8 == (undefined8 *)0x0) ||
           (((bVar52 = *(byte *)((long)param_8 + 0x39) >> 2, (bVar52 & 0x3c) != 0x3c &&
             ((bVar52 & 0x30) != 0x20)) || (*(int *)((long)param_8 + 0x5c) != 1)))) break;
        lVar30 = param_8[0xe];
        if (lVar30 != 0) {
          if (*(char *)(param_8 + 9) == '\0') {
                    /* WARNING: Subroutine does not return */
            FUN_00352af0("../../gold/mips.cc",0x2e46,"relocate");
          }
          local_68 = FUN_00298450(lVar30,lVar30 + 8);
          param_9 = (uint *)&local_78;
        }
        local_e8 = *(uint *)(param_8 + 0xc);
        uVar34 = *(ulong *)(param_4 + 0x20);
        if (uVar34 != 0) goto LAB_002c6275;
        goto LAB_002c638e;
      case 3:
switchD_002c4f87_caseD_3:
                    /* WARNING: Subroutine does not return */
        FUN_00352af0("../../gold/mips.cc",0x2e62,"relocate");
      case 4:
      case 100:
      case 0x85:
        bVar48 = false;
        bVar51 = (bool)((!bVar49 || !bVar50) & local_e3);
        uVar36 = (uint)*param_10;
        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18
        ;
        goto LAB_002c7644;
      case 5:
      case 0x68:
      case 0x86:
        goto switchD_002c4f87_caseD_5;
      case 6:
      case 0x69:
      case 0x87:
      case 0x9d:
        bVar48 = false;
        local_130 = (uint)*param_10;
        uVar45 = local_130 >> 0x18 | (local_130 & 0xff0000) >> 8;
        uVar19 = local_c8;
LAB_002c7171:
        if (param_3 == 9) {
          local_108 = DAT_0067db40;
          if ((undefined8 **)DAT_0067db40 != &DAT_0067db40) {
            do {
              if (uVar7 == *(uint *)(local_108 + 6)) {
                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);
                cVar14 = FUN_0028cc00(uVar18,uVar17);
                if (cVar14 == '\0') goto LAB_002c7bc0;
                uVar21 = local_108[2];
                uVar22 = local_108[4];
                uVar2 = *(undefined4 *)(local_108 + 5);
                uVar43 = local_108[3];
                uVar1 = *(undefined4 *)(local_108 + 7);
                FUN_00296ff0(uVar21,uVar18);
                uVar16 = FUN_002a8180(uVar21,uVar43,uVar22,uVar2,uVar1);
                FUN_00293050(uVar21,uVar18,0);
                if (uVar16 == 1) goto LAB_002c5940;
                puVar40 = (undefined8 *)*local_108;
                _DAT_0067db50 = _DAT_0067db50 + -1;
                FUN_004a1200(local_108);
                FUN_0049e340(local_108);
                local_108 = puVar40;
              }
              else {
LAB_002c7bc0:
                local_108 = (undefined8 *)*local_108;
              }
            } while ((undefined8 **)local_108 != &DAT_0067db40);
          }
          local_108 = DAT_0067db20;
          if ((undefined8 **)DAT_0067db20 != &DAT_0067db20) {
            do {
              if (uVar7 == *(uint *)(local_108 + 6)) {
                uVar18 = *(undefined4 *)((long)local_108 + 0x2c);
                cVar14 = FUN_0028cc00(uVar18,uVar17);
                if (cVar14 == '\0') goto LAB_002c7d70;
                uVar21 = local_108[2];
                uVar2 = *(undefined4 *)(local_108 + 5);
                uVar22 = local_108[3];
                uVar43 = local_108[4];
                uVar34 = (ulong)*(byte *)((long)local_108 + 0x34);
                FUN_00296ff0(uVar21,uVar18);
                uVar16 = FUN_002c48c0(uVar21,uVar22,uVar43,uVar2,uVar34 & 0xff,uVar19,param_4,uVar36
                                      ,param_1);
                FUN_00293050(uVar21,uVar18,0);
                if (uVar16 == 1) goto LAB_002c5940;
                puVar40 = (undefined8 *)*local_108;
                _DAT_0067db30 = _DAT_0067db30 + -1;
                FUN_004a1200(local_108);
                FUN_0049e340(local_108);
                local_108 = puVar40;
              }
              else {
LAB_002c7d70:
                local_108 = (undefined8 *)*local_108;
              }
            } while ((undefined8 **)local_108 != &DAT_0067db20);
          }
        }
        if (cVar12 == '\0') {
          uVar19 = FUN_001d7270(param_9,plVar3,uVar19);
        }
        else {
          lVar30 = *(long *)(param_4 + 0x28);
          if (uVar17 == 0x69) {
            if (lVar30 == 0) {
              iVar38 = 0;
            }
            else {
              iVar38 = *(int *)(lVar30 + 0x40);
              if (((*(long *)(param_4 + 0x20) != 0) &&
                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {
                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);
              }
            }
            iVar38 = iVar38 - (param_11 & 0xfffffffc);
          }
          else if ((uVar17 == 0x87) || (uVar17 == 0x9d)) {
            if (lVar30 == 0) {
              iVar38 = 0;
            }
            else {
              iVar38 = *(int *)(lVar30 + 0x40);
              if (((*(long *)(param_4 + 0x20) != 0) &&
                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {
                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);
              }
            }
            iVar38 = (iVar38 - param_11) + 3;
          }
          else {
            if (lVar30 == 0) {
              iVar38 = 0;
            }
            else {
              iVar38 = *(int *)(lVar30 + 0x40);
              if (((*(long *)(param_4 + 0x20) != 0) &&
                  (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {
                iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);
              }
            }
            iVar38 = (iVar38 - param_11) + 4;
          }
          uVar19 = iVar38 + uVar19;
        }
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar16 = 0;
        *(uint *)param_10 =
             (((uVar19 ^ uVar45) & 0xff00) << 8 | (uVar19 ^ uVar45) << 0x18) ^ local_130;
        break;
      case 7:
      case 8:
      case 0x65:
      case 0x88:
      case 0x89:
      case 0xac:
        lVar30 = *(long *)(param_4 + 0x28);
        if (lVar30 != 0) {
          bVar48 = false;
LAB_002c7253:
          iVar38 = *(int *)(lVar30 + 0x40);
          if (((*(long *)(param_4 + 0x20) != 0) &&
              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {
            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);
          }
          goto LAB_002c7297;
        }
        bVar48 = false;
        iVar38 = 0;
        uVar36 = (uint)*param_10;
        uVar45 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18
        ;
        uVar36 = local_c8;
LAB_002c72d4:
        iVar20 = FUN_001d7270(param_9,plVar3,uVar36);
        uVar19 = iVar20 - iVar38;
        if (param_8 == (undefined8 *)0x0) {
          uVar19 = uVar19 + (int)plVar3[0x6d];
        }
        uVar36 = (uVar19 ^ uVar45) & 0xffff;
        if (uVar17 == 0xac) {
          uVar36 = (uVar19 ^ uVar45) & 0x7f;
        }
        uVar36 = uVar45 ^ uVar36;
        if ((bool)cVar13) goto LAB_002c59a8;
        *(uint *)param_10 =
             uVar45 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;
        if (0xffff < uVar19 + 0x8000) {
          uVar21 = gettext(
                          "small-data section exceeds 64KB; lower small-data size limit (see option -G)"
                          );
          FUN_0034a750(uVar21);
          goto LAB_002c7359;
        }
        goto LAB_002c5c87;
      case 9:
      case 0x66:
      case 0x8a:
        goto switchD_002c4f87_caseD_9;
      case 10:
        bVar48 = false;
LAB_002c6a55:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;
        uVar16 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar36 * 4;
          uVar45 = uVar19 & 0x3fffc;
          uVar16 = uVar45 - 0x40000;
          if ((uVar19 & 0x20000) == 0) {
            uVar16 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 - param_11 >> 2;
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar36 = uVar36 ^ uVar19;
        *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;
        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar16 = 3;
        if ((uVar34 & 3) == 0) {
          uVar16 = (uint)(0x3ffff < (iVar38 - param_11) + 0x20000);
        }
        break;
      case 0xb:
      case 0x67:
      case 0x8e:
        bVar48 = false;
switchD_002c5379_caseD_b:
        if (param_8 == (undefined8 *)0x0) {
LAB_002c82dc:
                    /* WARNING: Subroutine does not return */
          FUN_00352af0("../../gold/mips.cc",0x2f3d,"relocate");
        }
        if (*(long *)(param_4 + 0x20) == 0) {
          FUN_00290a70();
          goto LAB_002c82dc;
        }
        local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);
        lVar30 = *(long *)(param_4 + 0x20);
        if (lVar30 != 0) {
LAB_002c6206:
          uVar36 = FUN_00292520(lVar30,local_e8,plVar3);
          if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;
          uVar16 = (uint)*param_10;
          uVar19 = (uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8) ^ uVar36;
          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar16;
          uVar16 = (uint)(0xffff < uVar36 + 0x8000);
          goto LAB_002c624f;
        }
        goto LAB_002c81f0;
      case 0xc:
        bVar48 = false;
switchD_002c5379_caseD_c:
        if (*(long *)(param_4 + 0x28) == 0) {
          iVar38 = 0;
        }
        else {
          iVar38 = *(int *)(*(long *)(param_4 + 0x28) + 0x40);
          if (((*(long *)(param_4 + 0x20) != 0) &&
              (*(long *)(*(long *)(param_4 + 0x20) + 0xd0) != 0)) && (plVar3[0x6e] != 0)) {
            iVar38 = iVar38 + *(int *)(plVar3[0x6e] + 0x10c);
          }
        }
        uVar17 = (uint)*param_10;
        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18
        ;
        if (bVar48 == false) {
          uVar17 = local_c8;
        }
        iVar20 = FUN_001d7270(param_9,plVar3,uVar17);
        uVar19 = (iVar20 + (int)plVar3[0x6d]) - iVar38;
        if ((bool)cVar13) goto LAB_002c59a8;
LAB_002c5ccb:
        uVar19 = uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | uVar19 << 0x18
        ;
        puVar37 = param_10;
        goto LAB_002c5c85;
      case 0x12:
        bVar48 = false;
switchD_002c5379_caseD_12:
        cVar13 = FUN_0029fc10(param_8,0x12,param_5,param_4);
        if (cVar13 != '\0') {
          uVar34 = (ulong)local_c8;
          cVar13 = *(char *)((long)param_1 + 4);
          if (bVar48 != false) {
            uVar34 = *param_10;
            uVar34 = uVar34 >> 0x38 | (uVar34 & 0xff000000000000) >> 0x28 |
                     (uVar34 & 0xff0000000000) >> 0x18 | (uVar34 & 0xff00000000) >> 8 |
                     (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |
                     (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;
          }
          goto LAB_002c6b22;
        }
        break;
      case 0x13:
      case 0x91:
      case 0xf9:
        bVar48 = false;
switchD_002c5379_caseD_13:
        lVar30 = *(long *)(param_4 + 0x20);
        if (param_8 != (undefined8 *)0x0) {
          if (lVar30 != 0) {
            local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);
            goto LAB_002c6043;
          }
          goto LAB_002c827b;
        }
        if (lVar30 == 0) goto LAB_002c8364;
        local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);
LAB_002c6043:
        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8276;
        uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);
        if (uVar17 == 0xf9) {
          puVar37 = param_1;
          if (*(char *)((long)param_1 + 4) == '\0') goto LAB_002c5ccb;
          goto LAB_002c5c85;
        }
        if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c59a8;
        goto LAB_002c6098;
      case 0x14:
      case 0x92:
        bVar48 = false;
switchD_002c5379_caseD_14:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar16 = uVar36;
        if (bVar48 == false) {
          uVar16 = local_c8;
        }
        FUN_001d7270(param_9,plVar3,uVar16);
        lVar30 = *(long *)(param_4 + 0x20);
        if (lVar30 != 0) {
          if (*(long *)(lVar30 + 0xd0) == 0) {
            lVar30 = *(long *)(lVar30 + 200);
          }
          else {
            lVar30 = plVar3[0x6e];
          }
          if (lVar30 == 0) goto LAB_002c8285;
          uVar18 = FUN_002c47d0();
          if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8280;
          uVar19 = FUN_00292520(*(long *)(param_4 + 0x20),uVar18,plVar3);
          if ((bool)cVar13) goto LAB_002c59a8;
          uVar36 = uVar36 ^ uVar19;
          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;
          goto LAB_002c60ab;
        }
        FUN_00290a70();
LAB_002c81a2:
        FUN_00290a70();
        goto LAB_002c81a7;
      case 0x15:
      case 0x93:
        bVar48 = false;
switchD_002c5379_caseD_15:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar19 = uVar36;
        if (bVar48 == false) {
          uVar19 = local_c8;
        }
        if (local_e2 != 0) {
          iVar38 = FUN_001d7270(param_9,plVar3,uVar19);
          lVar30 = *(long *)(param_4 + 0x20);
          if (lVar30 == 0) {
            FUN_00290a70();
            uVar17 = local_c8;
            goto LAB_002c6ed9;
          }
          if (*(long *)(lVar30 + 0xd0) == 0) {
            lVar30 = *(long *)(lVar30 + 200);
          }
          else {
            lVar30 = plVar3[0x6e];
          }
          if (lVar30 == 0) goto LAB_002c82c4;
          FUN_002c47d0(lVar30,iVar38 + 0x8000U & 0xffff0000);
          iVar20 = FUN_001d7270(param_9,plVar3,uVar19);
          uVar19 = iVar20 - (iVar38 + 0x8000U & 0xffff0000);
        }
        if ((bool)cVar13) {
          uVar16 = 0;
          *(uint *)param_1 = uVar19;
        }
        else {
          uVar36 = uVar36 ^ uVar19;
          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;
          uVar16 = (uint)(0xffff < uVar19 + 0x8000);
        }
        break;
      case 0x16:
      case 0x1e:
      case 0x94:
      case 0x99:
        bVar48 = false;
switchD_002c5379_caseD_16:
        lVar30 = *(long *)(param_4 + 0x20);
        if (param_8 == (undefined8 *)0x0) {
          if (lVar30 != 0) {
            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);
            goto LAB_002c5e6e;
          }
          goto LAB_002c81a2;
        }
        if (lVar30 == 0) goto LAB_002c8271;
        local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);
LAB_002c5e6e:
        if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c826c;
        iVar38 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);
        uVar36 = iVar38 + 0x8000U >> 0x10;
        if (*(char *)((long)param_1 + 4) == '\0') {
          uVar16 = 0;
          uVar19 = (uint)*param_10;
          uVar36 = uVar36 ^ (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8);
          *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;
          goto LAB_002c624f;
        }
LAB_002c67b0:
        *(uint *)param_1 = uVar36;
        uVar16 = 0;
LAB_002c624f:
        if (local_e1 != false) {
          uVar34 = *(ulong *)(param_4 + 0x20);
          if (uVar34 == 0) {
LAB_002c638e:
            FUN_00290a70();
switchD_002c4f87_caseD_5:
            bVar48 = false;
switchD_002c5379_caseD_5:
            if (param_3 == 4) {
              uVar16 = FUN_002a8180(param_10,plVar3,param_9,local_c8,param_11,cVar12,uVar17,bVar48,0
                                    ,param_4,uVar34 & 0xff,param_1);
            }
            else {
              if (param_3 != 9) goto LAB_002c81f5;
              lVar30 = FUN_0049cb70(0x40);
              uVar16 = 0;
              *(ulong **)(lVar30 + 0x10) = param_10;
              *(long **)(lVar30 + 0x18) = plVar3;
              *(uint **)(lVar30 + 0x20) = param_9;
              *(uint *)(lVar30 + 0x28) = local_c8;
              *(uint *)(lVar30 + 0x2c) = uVar17;
              *(uint *)(lVar30 + 0x30) = uVar7;
              *(bool *)(lVar30 + 0x34) = bVar48;
              *(uint *)(lVar30 + 0x38) = param_11;
              *(char *)(lVar30 + 0x3c) = cVar12;
              FUN_004a11e0(lVar30,&DAT_0067db40);
              _DAT_0067db50 = _DAT_0067db50 + 1;
            }
          }
          else {
            if (param_8 != (undefined8 *)0x0) {
LAB_002c6275:
              if (*(char *)(param_8 + 0x11) != '\0') {
                uVar17 = FUN_001d7270(param_9,plVar3,0);
                if (*(int *)((long)param_8 + 0x5c) != 2) {
                  piVar4 = *(int **)(uVar34 + 0xd0);
                  if (piVar4 == (int *)0x0) {
                    iVar38 = (*(int **)(uVar34 + 200))[1] + **(int **)(uVar34 + 200);
                  }
                  else {
                    iVar38 = piVar4[1] + *piVar4;
                  }
                  if (*(int *)(param_8 + 4) != 0) {
                    *(uint *)(*(long *)(uVar34 + 0xb8) +
                             (ulong)((uint)(((*(int *)(param_8 + 4) - *(int *)(uVar34 + 0xc0)) +
                                            iVar38 + 2) * 0x20) >> 3)) =
                         uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |
                         uVar17 << 0x18;
                    break;
                  }
                  goto LAB_002c8342;
                }
                goto LAB_002c8347;
              }
            }
            uVar17 = FUN_001d7270(param_9,plVar3,0);
            *(uint *)(*(long *)(uVar34 + 0xb8) + (ulong)local_e8) =
                 uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18
            ;
          }
        }
        break;
      case 0x17:
      case 0x1f:
      case 0x95:
      case 0x9a:
        bVar48 = false;
switchD_002c5379_caseD_17:
        lVar30 = *(long *)(param_4 + 0x20);
        if (param_8 == (undefined8 *)0x0) {
          if (lVar30 != 0) {
            local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,0,(long)(int)local_c8);
            goto LAB_002c5ddf;
          }
LAB_002c8369:
          FUN_00290a70();
LAB_002c836e:
          FUN_00290a70();
          goto LAB_002c8373;
        }
        if (lVar30 != 0) {
          local_e8 = FUN_0029b910(lVar30,param_8,0,plVar3);
LAB_002c5ddf:
          if (*(long *)(param_4 + 0x20) != 0) {
            uVar36 = FUN_00292520(*(long *)(param_4 + 0x20),local_e8,plVar3);
            if (*(char *)((long)param_1 + 4) != '\0') goto LAB_002c67b0;
            uVar16 = 0;
            uVar19 = (uint)*param_10;
            uVar36 = (uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8) ^ uVar36;
            *(uint *)param_10 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar19;
            goto LAB_002c624f;
          }
          FUN_00290a70();
        }
        FUN_00290a70();
LAB_002c826c:
        FUN_00290a70();
LAB_002c8271:
        FUN_00290a70();
LAB_002c8276:
        FUN_00290a70();
LAB_002c827b:
        FUN_00290a70();
LAB_002c8280:
        FUN_00290a70();
LAB_002c8285:
        FUN_00293370();
LAB_002c828a:
                    /* WARNING: Subroutine does not return */
        FUN_00352af0("../../gold/mips.cc",0x86a,"tls_ldm_offset");
      case 0x18:
      case 0x96:
        bVar48 = false;
LAB_002c6b1a:
        uVar34 = (ulong)-local_c0;
LAB_002c6b22:
        uVar34 = FUN_001d7270(param_9,plVar3,uVar34);
        uVar19 = (uint)uVar34;
        if (cVar13 != '\0') goto LAB_002c59a8;
        uVar16 = 0;
        *param_10 = (uVar34 & 0xff000000) << 8 | (uVar34 & 0xff0000) << 0x18 |
                    (uVar34 & 0xff00) << 0x28 | uVar34 << 0x38;
        break;
      case 0x1c:
      case 0x97:
        bVar48 = false;
LAB_002c59bd:
        uVar17 = (uint)*param_10;
        uVar16 = (uVar17 & 0xff0000) >> 8;
        uVar36 = uVar17 >> 0x18 | uVar16;
        uVar19 = local_c8;
        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {
          uVar19 = uVar36;
        }
        uVar16 = FUN_001d7270(param_9,plVar3,uVar19);
        uVar19 = (uint)((ulong)uVar16 + 0x80008000 >> 0x20);
        goto joined_r0x002c59a3;
      case 0x1d:
      case 0x98:
        bVar48 = false;
LAB_002c6b55:
        uVar19 = (uint)*param_10;
        uVar17 = local_c8;
        if (bVar48 != false) {
          uVar16 = (uVar19 & 0xff0000) >> 8;
          uVar36 = uVar19 >> 0x18 | uVar16;
          uVar17 = uVar36 - 0x10000;
          if ((uVar16 & 0x8000) == 0) {
            uVar17 = uVar36;
          }
        }
        FUN_001d7270(param_9,plVar3,uVar17);
        if (!bVar49 || !bVar50) {
          uVar19 = uVar19 & 0xffff;
          puVar37 = param_10;
          goto LAB_002c5c85;
        }
        uVar16 = 0;
        *(uint *)param_1 = 0;
        break;
      case 0x25:
      case 0x9c:
        bVar48 = false;
switchD_002c5379_caseD_25:
        if (param_8 != (undefined8 *)0x0) {
          cVar13 = FUN_0028d190(param_8,*(int *)(param_8 + 4) != 0,1);
          if (cVar13 == '\0') break;
          cVar13 = *(char *)((long)param_1 + 4);
        }
        uVar36 = (uint)*param_10;
        uVar16 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18
        ;
        uVar36 = uVar16;
        if (((uVar17 == 0x25) && (local_e3 != 1)) &&
           ((uVar16 == 0x3200008 || (uVar16 == 0x320f809)))) {
          iVar38 = FUN_001d7270(param_9,plVar3);
          if ((iVar38 - param_11) + 0x1fffc < 0x40000) {
            uVar17 = (iVar38 - param_11) - 4 >> 2 & 0xffff;
            uVar36 = uVar17 | 0x10000000;
            if (uVar16 != 0x3200008) {
              uVar36 = uVar17 | 0x4110000;
            }
          }
        }
        if (cVar13 == '\0') {
          uVar16 = 0;
          *(uint *)param_10 =
               uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18;
        }
        else {
          *(uint *)param_1 = uVar36;
          uVar16 = 0;
        }
        break;
      case 0x27:
      case 0x29:
        bVar48 = false;
switchD_002c5379_caseD_27:
        uVar17 = (uint)*param_10;
        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18
        ;
        if (bVar48 == false) {
          uVar17 = local_c8;
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);
        uVar19 = iVar38 - 0x8000;
        if (!bVar49 || !bVar50) goto LAB_002c5ccb;
        goto LAB_002c59a8;
      case 0x2a:
      case 0x6a:
      case 0xa2:
        bVar48 = false;
switchD_002c5379_caseD_2a:
        lVar30 = *(long *)(param_4 + 0x20);
        if (param_8 == (undefined8 *)0x0) {
          if (lVar30 == 0) goto LAB_002c832e;
          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,2,(long)(int)local_c8);
LAB_002c5c48:
          lVar30 = *(long *)(param_4 + 0x20);
          if (lVar30 != 0) goto LAB_002c5c62;
          FUN_00290a70();
        }
        else if (lVar30 != 0) {
          local_e8 = FUN_0029b910(lVar30,param_8,2,plVar3);
          goto LAB_002c5c48;
        }
        FUN_00290a70();
        goto LAB_002c83ab;
      case 0x2b:
      case 0x6b:
      case 0xa3:
        bVar48 = false;
switchD_002c5379_caseD_2b:
        lVar30 = *(long *)(param_4 + 0x20);
        if (lVar30 == 0) {
          FUN_00290a70();
LAB_002c8364:
          FUN_00290a70();
          goto LAB_002c8369;
        }
        if (*(long *)(lVar30 + 0xd0) == 0) {
          lVar24 = *(long *)(lVar30 + 200);
        }
        else {
          lVar24 = plVar3[0x6e];
        }
        if (lVar24 == 0) goto LAB_002c828a;
        local_e8 = *(uint *)(lVar24 + 0x14);
        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);
        goto LAB_002c5c74;
      case 0x2c:
      case 0x6c:
      case 0xa4:
        bVar48 = false;
switchD_002c5379_caseD_2c:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar16 = uVar36;
        if (bVar48 == false) {
          uVar16 = local_c8;
        }
        uVar19 = FUN_001d7270(param_9,plVar3,uVar16);
        goto LAB_002c5a76;
      case 0x2d:
      case 0x6d:
      case 0xa5:
switchD_002c4f87_caseD_2d:
        bVar48 = false;
switchD_002c5379_caseD_2d:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar16 = uVar36;
        if (bVar48 == false) {
          uVar16 = local_c8;
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 - 0x8000;
        goto joined_r0x002c59a3;
      case 0x2e:
      case 0x6e:
      case 0xa6:
        bVar48 = false;
switchD_002c5379_caseD_2e:
        lVar30 = *(long *)(param_4 + 0x20);
        if (param_8 == (undefined8 *)0x0) {
          if (lVar30 == 0) goto LAB_002c836e;
          local_e8 = (**(code **)(*plVar3 + 0x160))(plVar3,uVar7,1,(long)(int)local_c8);
        }
        else {
          if (lVar30 == 0) goto LAB_002c8338;
          local_e8 = FUN_0029b910(lVar30,param_8,1,plVar3);
        }
        lVar30 = *(long *)(param_4 + 0x20);
        if (lVar30 == 0) {
          FUN_00290a70();
          goto switchD_002c4f87_caseD_2d;
        }
LAB_002c5c62:
        uVar19 = FUN_00292520(lVar30,local_e8,plVar3);
LAB_002c5c74:
        puVar37 = param_1;
        if (*(char *)((long)param_1 + 4) == '\0') {
LAB_002c6098:
          uVar17 = (uint)*param_10;
          uVar36 = (uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8) ^ uVar19;
          uVar17 = ((uVar36 & 0xff00) << 8 | uVar36 << 0x18) ^ uVar17;
LAB_002c60ab:
          *(uint *)param_10 = uVar17;
          uVar16 = (uint)(0xffff < uVar19 + 0x8000);
        }
        else {
LAB_002c5c85:
          *(uint *)puVar37 = uVar19;
LAB_002c5c87:
          uVar16 = 0;
        }
        break;
      case 0x2f:
      case 0x30:
        bVar48 = false;
switchD_002c5379_caseD_2f:
        uVar17 = (uint)*param_10;
        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18
        ;
        if (bVar48 == false) {
          uVar17 = local_c8;
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);
        uVar19 = iVar38 - 0x7000;
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar16 = 0;
        *(uint *)param_10 =
             uVar19 >> 0x18 | (uVar19 & 0xff0000) >> 8 | (uVar19 & 0xff00) << 8 | iVar38 << 0x18;
        break;
      case 0x31:
      case 0x6f:
      case 0xa9:
        bVar48 = false;
switchD_002c5379_caseD_31:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar16 = uVar36;
        if (bVar48 == false) {
          uVar16 = local_c8;
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 + 0x1000;
LAB_002c5a76:
        uVar19 = uVar19 >> 0x10;
        goto joined_r0x002c59a3;
      case 0x32:
      case 0x70:
      case 0xaa:
        bVar48 = false;
switchD_002c5379_caseD_32:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar16 = uVar36;
        if (bVar48 == false) {
          uVar16 = local_c8;
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 - 0x7000;
joined_r0x002c59a3:
        if (bVar49 && bVar50) {
LAB_002c59a8:
          uVar16 = 0;
          *(uint *)param_1 = uVar19;
        }
        else {
          *(uint *)param_10 =
               uVar17 ^ (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18);
          uVar16 = 0;
        }
        break;
      case 0x3c:
        bVar48 = false;
LAB_002c6f06:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;
        uVar16 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar36 * 4;
          uVar45 = uVar19 & 0x7ffffc;
          uVar16 = uVar45 - 0x800000;
          if ((uVar19 & 0x400000) == 0) {
            uVar16 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 - param_11 >> 2;
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar36 = uVar36 ^ uVar19;
        *(uint *)param_10 =
             uVar17 ^ ((uVar36 & 0x1f0000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);
        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar16 = 3;
        if ((uVar34 & 3) == 0) {
          uVar16 = (uint)(0x7fffff < (iVar38 - param_11) + 0x400000);
        }
        break;
      case 0x3d:
        bVar48 = false;
LAB_002c6fd2:
        uVar17 = (uint)*param_10;
        uVar16 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18
        ;
        uVar36 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar16 * 4;
          uVar45 = uVar19 & 0xffffffc;
          uVar36 = uVar45 + 0xf0000000;
          if ((uVar19 & 0x8000000) == 0) {
            uVar36 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);
        uVar19 = iVar38 - param_11 >> 2;
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar16 = uVar16 ^ uVar19;
        *(uint *)param_10 =
             uVar17 ^ ((uVar16 & 0x3ffffff) >> 0x18 | (uVar16 & 0xff0000) >> 8 |
                       (uVar16 & 0xff00) << 8 | (uVar16 & 0x3ffffff) << 0x18);
        uVar34 = FUN_001d7270(param_9,plVar3,uVar36);
        uVar16 = 3;
        if ((uVar34 & 3) == 0) {
          uVar16 = (uint)(0xfffffff < (iVar38 - param_11) + 0x8000000);
        }
        break;
      case 0x3e:
        bVar48 = false;
LAB_002c6d53:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;
        uVar16 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar36 * 8;
          uVar45 = uVar19 & 0x1ffff8;
          uVar16 = uVar45 - 0x200000;
          if ((uVar19 & 0x100000) == 0) {
            uVar16 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar45 = iVar38 - (param_11 & 0xfffffff8);
        uVar19 = uVar45 >> 3;
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar36 = uVar36 ^ uVar19;
        *(uint *)param_10 =
             uVar17 ^ ((uVar36 & 0x30000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);
        uVar34 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar34 = uVar34 & 7;
joined_r0x002c6ec7:
        uVar16 = 3;
        if (uVar34 == 0) {
          uVar16 = (uint)(0x1fffff < uVar45 + 0x100000);
        }
        break;
      case 0x3f:
        bVar48 = false;
LAB_002c6e24:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;
        uVar16 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar36 * 4;
          uVar45 = uVar19 & 0x1ffffc;
          uVar16 = uVar45 - 0x200000;
          if ((uVar19 & 0x100000) == 0) {
            uVar16 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar45 = iVar38 - param_11;
        uVar19 = uVar45 >> 2;
        if (!bVar49 || !bVar50) {
          uVar36 = uVar36 ^ uVar19;
          *(uint *)param_10 =
               uVar17 ^ ((uVar36 & 0x70000) >> 8 | (uVar36 & 0xff00) << 8 | uVar36 << 0x18);
          uVar34 = FUN_001d7270(param_9,plVar3,uVar16);
          uVar34 = uVar34 & 3;
          goto joined_r0x002c6ec7;
        }
        goto LAB_002c59a8;
      case 0x40:
        bVar48 = false;
switchD_002c5379_caseD_40:
        if (param_3 == 4) {
          uVar17 = (uint)*param_10;
          uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
          uVar16 = uVar36 << 0x10;
          if (bVar48 == false) {
            uVar16 = local_c8;
          }
          iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
          uVar19 = (iVar38 - param_11) + 0x8000 >> 0x10;
          if ((bool)cVar13) goto LAB_002c59a8;
          uVar19 = uVar19 ^ uVar36;
          uVar16 = 0;
          *(uint *)param_10 = ((uVar19 & 0xff00) << 8 | uVar19 << 0x18) ^ uVar17;
        }
        else {
          if (param_3 != 9) {
                    /* WARNING: Subroutine does not return */
            FUN_00352af0("../../gold/mips.cc",0x2eda,"relocate");
          }
          lVar30 = FUN_0049cb70(0x40);
          *(undefined1 *)(lVar30 + 0x3c) = 0;
          uVar16 = 0;
          *(undefined4 *)(lVar30 + 0x2c) = 0;
          *(ulong **)(lVar30 + 0x10) = param_10;
          *(long **)(lVar30 + 0x18) = plVar3;
          *(uint **)(lVar30 + 0x20) = param_9;
          *(uint *)(lVar30 + 0x28) = local_c8;
          *(uint *)(lVar30 + 0x30) = uVar7;
          *(bool *)(lVar30 + 0x34) = bVar48;
          *(uint *)(lVar30 + 0x38) = param_11;
          FUN_004a11e0(lVar30,&DAT_0067db00);
          _DAT_0067db10 = _DAT_0067db10 + 1;
        }
        break;
      case 0x41:
        bVar48 = false;
LAB_002c6ccf:
        uVar17 = (uint)*param_10;
        uVar16 = (uVar17 & 0xff0000) >> 8;
        uVar36 = uVar17 >> 0x18 | uVar16;
        uVar19 = local_c8;
        if ((bVar48 != false) && (uVar19 = uVar36 - 0x10000, (uVar16 & 0x8000) == 0)) {
          uVar19 = uVar36;
        }
        if ((param_3 == 9) &&
           (local_98 = DAT_0067db00, (undefined8 **)DAT_0067db00 != &DAT_0067db00)) {
          do {
            if (uVar7 == *(uint *)(local_98 + 6)) {
              puVar6 = (uint *)local_98[2];
              iVar38 = *(int *)(local_98 + 5);
              uVar16 = *puVar6;
              uVar45 = uVar16 >> 0x18 | (uVar16 & 0xff0000) >> 8;
              if (*(char *)((long)local_98 + 0x34) != '\0') {
                iVar38 = uVar19 + uVar45 * 0x10000;
              }
              iVar20 = *(int *)(local_98 + 7);
              iVar38 = FUN_001d7270(local_98[4],local_98[3],iVar38);
              uVar32 = (uint)((0x8000 - iVar20) + iVar38) >> 0x10;
              if (bVar49 && bVar50) {
                *(uint *)param_1 = uVar32;
              }
              else {
                uVar32 = uVar32 ^ uVar45;
                *puVar6 = ((uVar32 & 0xff00) << 8 | uVar32 << 0x18) ^ uVar16;
              }
              puVar40 = (undefined8 *)*local_98;
              _DAT_0067db10 = _DAT_0067db10 + -1;
              FUN_004a1200(local_98);
              FUN_0049e340(local_98);
              local_98 = puVar40;
            }
            else {
              local_98 = (undefined8 *)*local_98;
            }
          } while ((undefined8 **)local_98 != &DAT_0067db00);
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar19);
        uVar19 = iVar38 - param_11;
        if ((bool)cVar13) goto LAB_002c59a8;
        uVar16 = 0;
        *(uint *)param_10 = (((uVar19 ^ uVar36) & 0xff00) << 8 | (uVar19 ^ uVar36) << 0x18) ^ uVar17
        ;
        break;
      case 0x8b:
        bVar48 = false;
LAB_002c6bb8:
        uVar34 = *param_10;
        uVar17 = (uint)uVar34 >> 0x18;
        uVar36 = local_c8;
        if (bVar48 != false) {
          uVar16 = uVar17 * 2;
          uVar19 = uVar16 & 0xff;
          uVar36 = uVar19 - 0x100;
          if ((uVar16 & 0x80) == 0) {
            uVar36 = uVar19;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar36);
        uVar19 = iVar38 - param_11 >> 1;
        if ((bool)cVar13) {
LAB_002c78e8:
          uVar16 = 0;
          *(uint *)param_1 = uVar19;
        }
        else {
          *(uint *)param_10 = (uint)uVar34 ^ ((uVar19 ^ uVar17) & 0x7f) << 0x18;
          uVar16 = (uint)(0xff < (iVar38 - param_11) + 0x80);
        }
        break;
      case 0x8c:
        bVar48 = false;
LAB_002c6c3e:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8;
        uVar16 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar36 * 2;
          uVar45 = uVar19 & 0x7fe;
          uVar16 = uVar45 - 0x800;
          if ((uVar19 & 0x400) == 0) {
            uVar16 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 - param_11 >> 1;
        if ((bool)cVar13) goto LAB_002c78e8;
        uVar19 = uVar19 ^ uVar36;
        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0x300) << 8 | uVar19 << 0x18);
        uVar16 = (uint)(0x7ff < (iVar38 - param_11) + 0x400);
        break;
      case 0x8d:
        bVar48 = false;
LAB_002c69c5:
        uVar17 = (uint)*param_10;
        uVar36 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8;
        uVar16 = local_c8;
        if (bVar48 != false) {
          uVar19 = uVar36 * 2;
          uVar45 = uVar19 & 0x1fffe;
          uVar16 = uVar45 - 0x20000;
          if ((uVar19 & 0x10000) == 0) {
            uVar16 = uVar45;
          }
        }
        iVar38 = FUN_001d7270(param_9,plVar3,uVar16);
        uVar19 = iVar38 - param_11 >> 1;
        if ((bool)cVar13) goto LAB_002c78e8;
        uVar19 = uVar19 ^ uVar36;
        *(uint *)param_10 = uVar17 ^ ((uVar19 & 0xff00) << 8 | uVar19 << 0x18);
        uVar16 = (uint)(0x1ffff < (iVar38 - param_11) + 0x10000);
        break;
      case 0xf8:
        bVar48 = false;
        uVar17 = local_c8;
LAB_002c6ed9:
        iVar38 = FUN_001d7270(param_9,plVar3,uVar17);
        uVar19 = iVar38 - param_11;
        if (!bVar49 || !bVar50) goto LAB_002c5ccb;
        goto LAB_002c59a8;
      }
LAB_002c5940:
      puVar44 = puVar44 + 1;
      if ((uint *)&local_78 == puVar44) {
LAB_002c5380:
        uVar17 = uVar47 - 0x85;
        if (local_f4 < 0xd) {
          uVar36 = (uint)*param_10;
          uVar19 = uVar36 >> 0x18 | (uVar36 & 0xff0000) >> 8;
          uVar45 = (uVar36 & 0xff00) << 8;
          uVar32 = uVar36 << 0x18;
          uVar31 = uVar19 | uVar45 | uVar32;
          uVar29 = (ushort)(uVar31 >> 0x10);
          uVar15 = (ushort)(uVar32 >> 0x10);
          if (uVar17 < 0x29) {
            if ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) == 0) {
LAB_002c5754:
              uVar29 = uVar15 & 0xf800 | (ushort)uVar19 & 0x7e0 |
                       (ushort)((uVar36 & 0xff0000) >> 0x13);
              uVar31 = (uVar45 | uVar32) >> 0xb | uVar36 >> 0x18 & 0x1f;
            }
          }
          else if (((uVar47 == 0x85 || uVar47 == 100) || uVar47 == 4) || (uVar47 != 100)) {
            if (uVar47 != 100) goto LAB_002c5754;
            uVar29 = uVar29 >> 5 & 0x1f | (ushort)((uVar45 & 0x1f0000) >> 0xb) | uVar15 & 0xfc00;
          }
LAB_002c5471:
          *(ushort *)((long)param_10 + 2) = (ushort)uVar31 << 8 | (ushort)uVar31 >> 8;
          *(ushort *)param_10 = uVar29 << 8 | uVar29 >> 8;
        }
        else if (((uVar17 < 0x29) && ((0x1b3e1fff3ffU >> ((ulong)uVar17 & 0x3f) & 1) != 0)) &&
                (1 < uVar47 - 0x8b)) {
          uVar17 = (uint)*param_10;
          uVar31 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |
                   uVar17 << 0x18;
          uVar29 = (ushort)(uVar31 >> 0x10);
          goto LAB_002c5471;
        }
        if (uVar16 == 1) {
          if (param_8 == (undefined8 *)0x0) {
            lVar30 = plVar3[1];
            uVar21 = gettext("relocation overflow: %u against local symbol %u in %s");
            FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,uVar7,lVar30);
          }
          else {
            if ((*(byte *)((long)param_8 + 0x3a) & 7) == 0) {
              if ((*(byte *)((long)param_8 + 0x3b) & 0x20) == 0) {
                bVar52 = FUN_00443190();
                bVar52 = bVar52 ^ 1;
              }
              else {
                bVar52 = *(int *)(param_8 + 3) != 0;
              }
            }
            else {
              bVar52 = (*(byte *)((long)param_8 + 0x3a) & 7) != 4;
            }
            if ((bVar52 == 0) || ((*(byte *)((long)param_8 + 0x3a) & 7) != 0)) {
              FUN_004443d0(local_58,param_8);
              puVar8 = local_58[0];
              uVar21 = gettext("relocation overflow: %u against \'%s\'");
                    /* try { // try from 002c672e to 002c6732 has its CatchHandler @ 002c83c5 */
              FUN_0034aed0(param_2,param_6,uVar35,uVar21,uVar47,puVar8);
              if (local_58[0] == auStack_48) goto LAB_002c53ec;
            }
            else {
              uVar21 = *(undefined8 *)(param_8[2] + 8);
              FUN_004443d0(local_58,param_8);
              puVar8 = local_58[0];
              uVar22 = gettext("relocation overflow: %u against \'%s\' defined in %s");
                    /* try { // try from 002c5518 to 002c551c has its CatchHandler @ 002c83bd */
              FUN_0034aed0(param_2,param_6,uVar35,uVar22,uVar47,puVar8,uVar21);
              if (local_58[0] == auStack_48) goto LAB_002c53ec;
            }
            FUN_0049e340();
          }
        }
        else if (uVar16 != 0) {
          if (uVar16 == 2) {
            pcVar42 = "unexpected opcode while processing relocation";
          }
          else {
            if (uVar16 != 3) {
                    /* WARNING: Subroutine does not return */
              FUN_00352af0("../../gold/mips.cc",0x3035,"relocate");
            }
            pcVar42 = "unaligned PC-relative relocation";
          }
          uVar21 = gettext(pcVar42);
          FUN_0034aed0(param_2,param_6,uVar35,uVar21);
        }
LAB_002c53ec:
        FUN_001a5bc0(&local_78);
        return 1;
      }
      uVar17 = *puVar44;
      goto LAB_002c4f1d;
    }
    FUN_00290a30();
    goto LAB_002c8217;
  }
  goto LAB_002c52f0;
LAB_002c82c4:
  FUN_00293370();
LAB_002c82c9:
  uVar36 = (uint)uVar34;
  if ((char)puVar44 == '\0') {
LAB_002c5869:
    lVar30 = param_8[0x10];
LAB_002c5870:
    local_d0 = (uint *)&local_78;
    local_68 = FUN_00298450(lVar30,lVar30 + 8);
    param_9 = local_d0;
    bVar48 = true;
    local_e1 = true;
  }
  else {
LAB_002c4d83:
    uVar36 = (uint)uVar34;
    if (*(int *)((long)param_8 + 0x4c) != -1) goto LAB_002c5256;
    bVar48 = true;
LAB_002c4d98:
    local_d0 = (uint *)&local_78;
    if (((*(int *)((long)param_8 + 0x24) != -1) && (*(int *)((long)param_8 + 0x6c) != -1)) &&
       (*(int *)(param_8 + 0xd) != -1)) {
      lVar30 = *(long *)(param_4 + 0x30);
      if (lVar30 == 0) goto LAB_002c833d;
      if ((*(byte *)(lVar30 + 0x20) & 1) != 0) {
        local_68 = *(int *)((long)param_8 + 0x6c) + 1 +
                   *(int *)(lVar30 + 0x68) + *(int *)(lVar30 + 0x60) + *(int *)(lVar30 + 8);
        if (*(char *)(param_4 + 0x14) != '\0') {
          bVar49 = (*(uint *)(param_4 + 0x10) & 0x2000000) == 0;
          param_9 = local_d0;
          puVar44 = (uint *)(ulong)bVar49;
          uVar17 = (uint)!bVar49;
          goto LAB_002c4e20;
        }
LAB_002c83ab:
        FUN_00290d80();
      }
                    /* WARNING: Subroutine does not return */
      FUN_00291e90();
    }
  }
LAB_002c4e20:
  local_98._0_1_ = (byte)uVar17;
  bVar49 = (bool)((byte)local_98 & bVar48);
  goto joined_r0x002c52d3;
switchD_002c4f87_caseD_9:
  bVar48 = false;
switchD_002c5379_caseD_9:
  if (param_8 == (undefined8 *)0x0) {
    if (param_3 == 4) {
      uVar16 = FUN_002c48c0(param_10,plVar3,param_9,local_c8,bVar48,0,param_4,uVar34,param_1);
    }
    else {
      if (param_3 != 9) {
LAB_002c8373:
                    /* WARNING: Subroutine does not return */
        FUN_00352af0("../../gold/mips.cc",0x2f66,"relocate");
      }
      lVar30 = FUN_0049cb70(0x40);
      *(undefined1 *)(lVar30 + 0x3c) = 0;
      uVar16 = 0;
      *(undefined4 *)(lVar30 + 0x38) = 0;
      *(ulong **)(lVar30 + 0x10) = param_10;
      *(long **)(lVar30 + 0x18) = plVar3;
      *(uint **)(lVar30 + 0x20) = param_9;
      *(uint *)(lVar30 + 0x28) = local_c8;
      *(uint *)(lVar30 + 0x2c) = uVar17;
      *(uint *)(lVar30 + 0x30) = uVar7;
      *(bool *)(lVar30 + 0x34) = bVar48;
      FUN_004a11e0(lVar30,&DAT_0067db20);
      _DAT_0067db30 = _DAT_0067db30 + 1;
    }
    goto LAB_002c624f;
  }
  if (*(long *)(param_4 + 0x20) == 0) goto LAB_002c8333;
  puVar40 = param_8;
  local_e8 = FUN_0029b910(*(long *)(param_4 + 0x20),param_8,0,plVar3);
  local_98._0_1_ = (byte)puVar40;
  lVar30 = *(long *)(param_4 + 0x20);
  if (lVar30 != 0) goto LAB_002c6206;
  FUN_00290a70();
LAB_002c6490:
  uVar17 = (uint)(byte)local_98;
LAB_002c64ab:
  local_d0 = (uint *)&local_78;
  local_68 = FUN_00298450();
  bVar49 = uVar47 == 100;
  puVar44 = (uint *)0x0;
  if ((uVar36 & 0xf7) == 0x85) goto LAB_002c7a61;
  local_e1 = true;
  bVar48 = bVar49;
LAB_002c64da:
  local_d0 = (uint *)&local_78;
  puVar44 = (uint *)0x0;
  param_9 = local_d0;
  goto LAB_002c4e43;
LAB_002c7a61:
  param_9 = local_d0;
  local_e1 = true;
  goto LAB_002c4e56;
}

